annotate benq-fw-disasm @ 335:10d62a3bfeec

frbl2test: L command addr and nwords need to be sent in LE byte order
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 07 Mar 2020 05:56:32 +0000
parents 42575bc59702
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
278
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 ; The present work is a disassembly analysis of the firmware image
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 ; read out of a BenQ M32 module. I have only dug far enough to get
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 ; to the Init_Target() function; my original goal was to see the MEMIF
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 ; setup done therein, which has been successfully located (0x00A3 for
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 ; nCS0, nCS1 and nCS2, totally vanilla), but we've also got a couple of
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 ; surprise discoveries:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 ;
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 ; 1) It appears that BenQ put their XRAM on Calypso nCS2 instead of
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 ; the canonical placement on nCS1.
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 ;
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 ; 2) Even though the D751774AZHH Calypso chip found in this module
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 ; is supposed to be a C035 variant, not C05, the PLL setup is done
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 ; the way TI did it for D-Sample C05: the PLL multiplier is set to 6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 ; rather than 8, so the DSP gets 78 MHz instead of 104 MHz and the
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 ; ARM gets 39 MHz instead of 52 MHz.
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 ;
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 ; The code is very heavily modified relative to TI's original; in those
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 ; places where some TI's original code shines through, it is closer
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 ; to the old DSample-20020917 specimen than to Openmoko-era TCS211.
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 ; Flash boot mode 1 reset entry
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 0: ea004015 b 0x1005c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 4: ea003ffd b 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 8: ea003ffd b 0x10004
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 c: ea003ffd b 0x10008
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 10: ea003ffd b 0x1000c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 14: ea003ffd b 0x10010
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 18: ea003ffd b 0x10014
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 1c: ea003ffd b 0x10018
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 2000: 00000001
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 ; mysterious routine called from the assembly boot path,
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 ; implements some kind of interrupt-boot mechanism via the MODEM UART
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 7890: e59f2438 ldr r2, =0xfffff804 ; via 0x7cd0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 7894: e3a010f5 mov r1, #245 ; 0xf5
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 7898: e1c210b0 strh r1, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 789c: e3a010a0 mov r1, #160 ; 0xa0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 78a0: e1c210b0 strh r1, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 78a4: e59f03fc ldr r0, =0xffff5800 ; via 0x7ca8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 78a8: e59f13fc ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 78ac: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 78b0: e59f13f4 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 78b4: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 78b8: e3a01018 mov r1, #24 ; 0x18
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 78bc: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 78c0: e3a01011 mov r1, #17 ; 0x11
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48 78c4: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49 78c8: e3a01013 mov r1, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 78cc: e5c01006 strb r1, [r0, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 78d0: e59f13e4 ldr r1, =0x0 ; via 0x7cbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 78d4: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 78d8: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 78dc: e5c01001 strb r1, [r0, #1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55 78e0: e59f13c4 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 78e4: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57 78e8: e3a01007 mov r1, #7
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 78ec: e5c01000 strb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 78f0: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 78f4: e5c01001 strb r1, [r0, #1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 78f8: e59f13b0 ldr r1, =0x13 ; via 0x7cb0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 78fc: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63 7900: e3a01040 mov r1, #64 ; 0x40
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 7904: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 7908: e3a0100f mov r1, #15 ; 0xf
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 790c: e5c01006 strb r1, [r0, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 7910: e59f1394 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 7914: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 7918: e59f1390 ldr r1, =0x13 ; via 0x7cb0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 791c: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71 7920: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72 7924: e5c01010 strb r1, [r0, #16] ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73 7928: e59f1384 ldr r1, =0x6 ; via 0x7cb4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74 792c: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 7930: e3a0100f mov r1, #15 ; 0xf
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76 7934: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 7938: e3a010f1 mov r1, #241 ; 0xf1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 793c: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 7940: e59f1370 ldr r1, =0x7 ; via 0x7cb8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 7944: e5c01008 strb r1, [r0, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 7948: e3a01ffa mov r1, #1000 ; 0x3e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82 794c: e2411001 sub r1, r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
83 7950: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
84 7954: 1afffffc bne 0x794c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
85 7958: e59f135c ldr r1, =0x0 ; via 0x7cbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
86 795c: e5c01008 strb r1, [r0, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
87 7960: e3a030ff mov r3, #255 ; 0xff
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
88 7964: e59f2368 ldr r2, =0x1870bf0 ; via 0x7cd4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
89 7968: e5c23000 strb r3, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
90 796c: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
91 7970: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
92 7974: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
93 7978: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
94 797c: 0a00000b beq 0x79b0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
95 7980: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
96 7984: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
97 7988: 0afffff9 beq 0x7974
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
98 798c: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
99 7990: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
100 7994: 1a000003 bne 0x79a8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
101 7998: e2422001 sub r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
102 799c: e3520000 cmp r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
103 79a0: 0a000042 beq 0x7ab0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
104 79a4: eafffff2 b 0x7974
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
105 79a8: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
106 79ac: eafffff0 b 0x7974
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
107 79b0: e59f02f0 ldr r0, =0xffff5800 ; via 0x7ca8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
108 79b4: e59f12f0 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
109 79b8: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
110 79bc: e59f12e8 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
111 79c0: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
112 79c4: e3a01018 mov r1, #24 ; 0x18
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
113 79c8: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
114 79cc: e3a01011 mov r1, #17 ; 0x11
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
115 79d0: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
116 79d4: e3a01013 mov r1, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
117 79d8: e5c01006 strb r1, [r0, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
118 79dc: e59f12d8 ldr r1, =0x0 ; via 0x7cbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
119 79e0: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
120 79e4: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
121 79e8: e5c01001 strb r1, [r0, #1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
122 79ec: e59f12b8 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
123 79f0: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
124 79f4: e3a01002 mov r1, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
125 79f8: e5c01000 strb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
126 79fc: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
127 7a00: e5c01001 strb r1, [r0, #1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
128 7a04: e59f12a4 ldr r1, =0x13 ; via 0x7cb0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
129 7a08: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
130 7a0c: e3a01040 mov r1, #64 ; 0x40
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
131 7a10: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
132 7a14: e3a0100f mov r1, #15 ; 0xf
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
133 7a18: e5c01006 strb r1, [r0, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
134 7a1c: e59f1288 ldr r1, =0xbf ; via 0x7cac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
135 7a20: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
136 7a24: e59f1284 ldr r1, =0x13 ; via 0x7cb0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
137 7a28: e5c01003 strb r1, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
138 7a2c: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
139 7a30: e5c01010 strb r1, [r0, #16] ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
140 7a34: e59f1278 ldr r1, =0x6 ; via 0x7cb4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
141 7a38: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
142 7a3c: e3a0100f mov r1, #15 ; 0xf
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
143 7a40: e5c01004 strb r1, [r0, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
144 7a44: e3a010f1 mov r1, #241 ; 0xf1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
145 7a48: e5c01002 strb r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
146 7a4c: e59f1264 ldr r1, =0x7 ; via 0x7cb8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
147 7a50: e5c01008 strb r1, [r0, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
148 7a54: e3a01ffa mov r1, #1000 ; 0x3e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
149 7a58: e2411001 sub r1, r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
150 7a5c: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
151 7a60: 1afffffc bne 0x7a58
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
152 7a64: e59f1250 ldr r1, =0x0 ; via 0x7cbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
153 7a68: e5c01008 strb r1, [r0, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
154 7a6c: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
155 7a70: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
156 7a74: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
157 7a78: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
158 7a7c: 0a0021d9 beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
159 7a80: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
160 7a84: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
161 7a88: 0afffff9 beq 0x7a74
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
162 7a8c: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
163 7a90: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
164 7a94: 1a000003 bne 0x7aa8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
165 7a98: e2422001 sub r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
166 7a9c: e3520000 cmp r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
167 7aa0: 0a000002 beq 0x7ab0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
168 7aa4: eafffff2 b 0x7a74
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
169 7aa8: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
170 7aac: eafffff0 b 0x7a74
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
171 7ab0: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
172 7ab4: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
173 7ab8: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
174 7abc: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
175 7ac0: 0a0021c8 beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
176 7ac4: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
177 7ac8: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
178 7acc: 0afffff9 beq 0x7ab8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
179 7ad0: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
180 7ad4: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
181 7ad8: 1a000003 bne 0x7aec
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
182 7adc: e2422001 sub r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
183 7ae0: e3520000 cmp r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
184 7ae4: 0a000002 beq 0x7af4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
185 7ae8: eafffff2 b 0x7ab8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
186 7aec: e3a0200a mov r2, #10 ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
187 7af0: eafffff0 b 0x7ab8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
188 7af4: e3a010ee mov r1, #238 ; 0xee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
189 7af8: e5c01000 strb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
190 7afc: e3a01066 mov r1, #102 ; 0x66
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
191 7b00: e5c01000 strb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
192 7b04: e3a02012 mov r2, #18 ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
193 7b08: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
194 7b0c: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
195 7b10: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
196 7b14: 0a0021b3 beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
197 7b18: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
198 7b1c: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
199 7b20: 0afffff9 beq 0x7b0c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
200 7b24: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
201 7b28: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
202 7b2c: 1a000003 bne 0x7b40
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
203 7b30: e2422001 sub r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
204 7b34: e3520000 cmp r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
205 7b38: 0a0021aa beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
206 7b3c: eafffff2 b 0x7b0c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
207 7b40: e3510011 cmp r1, #17 ; 0x11
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
208 7b44: 1a0021a7 bne 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
209 7b48: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
210 7b4c: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
211 7b50: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
212 7b54: 0a0021a3 beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
213 7b58: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
214 7b5c: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
215 7b60: 0afffff9 beq 0x7b4c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
216 7b64: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
217 7b68: e3510022 cmp r1, #34 ; 0x22
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
218 7b6c: 1a00219d bne 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
219 7b70: e3a08801 mov r8, #65536 ; 0x10000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
220 7b74: e2488001 sub r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
221 7b78: e3580000 cmp r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
222 7b7c: 0a002199 beq 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
223 7b80: e5d01005 ldrb r1, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
224 7b84: e3110001 tst r1, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
225 7b88: 0afffff9 beq 0x7b74
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
226 7b8c: e5d01000 ldrb r1, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
227 7b90: e3a020ee mov r2, #238 ; 0xee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
228 7b94: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
229 7b98: e1a02001 mov r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
230 7b9c: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
231 7ba0: e3510000 cmp r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
232 7ba4: 0a000004 beq 0x7bbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
233 7ba8: e35100f0 cmp r1, #240 ; 0xf0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
234 7bac: 0a000002 beq 0x7bbc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
235 7bb0: e59f211c ldr r2, =0x1870bf0 ; via 0x7cd4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
236 7bb4: e5c21000 strb r1, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
237 7bb8: ea00218a b 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
238 7bbc: e59f2114 ldr r2, =0x140000 ; via 0x7cd8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
239 7bc0: e5922000 ldr r2, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
240 7bc4: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
241 7bc8: e1a02422 mov r2, r2, lsr #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
242 7bcc: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
243 7bd0: e1a02422 mov r2, r2, lsr #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
244 7bd4: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
245 7bd8: e1a02422 mov r2, r2, lsr #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
246 7bdc: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
247 7be0: e3a08000 mov r8, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
248 7be4: e35100f0 cmp r1, #240 ; 0xf0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
249 7be8: 0a000001 beq 0x7bf4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
250 7bec: e59f40e4 ldr r4, =0x140000 ; via 0x7cd8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
251 7bf0: ea000002 b 0x7c00
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
252 7bf4: e59f10dc ldr r1, =0x140000 ; via 0x7cd8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
253 7bf8: e5911000 ldr r1, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
254 7bfc: e59f40d8 ldr r4, =0x100 ; via 0x7cdc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
255 7c00: e7d42008 ldrb r2, [r4, r8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
256 7c04: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
257 7c08: e2888001 add r8, r8, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
258 7c0c: e3580010 cmp r8, #16 ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
259 7c10: 1afffffa bne 0x7c00
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
260 7c14: e5d02005 ldrb r2, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
261 7c18: e3120001 tst r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
262 7c1c: 0afffffc beq 0x7c14
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
263 7c20: e5d02000 ldrb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
264 7c24: e3520033 cmp r2, #51 ; 0x33
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
265 7c28: 1a00216e bne 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
266 7c2c: e5d02005 ldrb r2, [r0, #5]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
267 7c30: e3120001 tst r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
268 7c34: 0afffffc beq 0x7c2c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
269 7c38: e5d02000 ldrb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
270 7c3c: e3520044 cmp r2, #68 ; 0x44
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
271 7c40: 1a002168 bne 0x101e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
272 7c44: e59f2078 ldr r2, =0x3490 ; via 0x7cc4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
273 7c48: e59f3078 ldr r3, =0x820100 ; via 0x7cc8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
274 7c4c: e59f406c ldr r4, =0x7000 ; via 0x7cc0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
275 7c50: e5d26000 ldrb r6, [r2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
276 7c54: e5c36000 strb r6, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
277 7c58: e2822001 add r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
278 7c5c: e2833001 add r3, r3, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
279 7c60: e2444001 sub r4, r4, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
280 7c64: e3540000 cmp r4, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
281 7c68: 1afffff8 bne 0x7c50
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
282 7c6c: e3a020ee mov r2, #238 ; 0xee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
283 7c70: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
284 7c74: e3a02066 mov r2, #102 ; 0x66
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
285 7c78: e5c02000 strb r2, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
286 7c7c: e59f0048 ldr r0, =0x81fffc ; via 0x7ccc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
287 7c80: e1a0d000 mov sp, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
288 7c84: e59f003c ldr r0, =0x820100 ; via 0x7cc8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
289 7c88: e280e001 add lr, r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
290 7c8c: e1a00001 mov r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
291 7c90: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
292
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
293 ; TI-style exception and interrupt vectors
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
294 10000: ea0000ed b 0x103bc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
295 10004: ea0000f4 b 0x103dc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
296 10008: ea0000fb b 0x103fc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
297 1000c: ea0000fe b 0x1040c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
298 10010: ea000102 b 0x10420
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
299 10014: ea0000e2 b 0x103a4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
300 10018: ea0000e6 b 0x103b8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
301
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
302 ; _c_int00 pool of constants, differs from both TCS211 and DSample-20020917
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
303 ; versions:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
304
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
305 1001c: 02a302a3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
306 10020: 029202a3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
307 10024: 02c00201
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
308 10028: 002a0040
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
309 1002c: fffffb00
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
310 10030: fffffd00
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
311 10034: ffff9800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
312 10038: fffffb10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
313 1003c: ffffff08
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
314 10040: fffef006
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
315 10044: 20021081
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
316 10048: f7ff0800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
317 1004c: 00080000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
318 10050: fffe1800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
319 10054: fffe1811
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
320 10058: 0001063c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
321
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
322 ; Reset entry branches here
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
323 1005c: e59fb550 ldr r11, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
324 10060: e92b1007 stmdb r11!, {r0, r1, r2, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
325 10064: ea00011b b 0x104d8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
326
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
327 ; return from the 0x104d8 "routine"
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
328 10068: e8bb1007 ldmia r11!, {r0, r1, r2, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
329 ; code matches both TCS211 and DSample-20020917
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
330 1006c: e51f1040 ldr r1, =0xffff9800 ; via 0x10034
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
331 10070: e15f23b2 ldrh r2, =0x2002 ; via 0x10046
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
332 10074: e1c120b0 strh r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
333 10078: e5912000 ldr r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
334 1007c: e2022001 and r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
335 10080: e3520001 cmp r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
336 10084: 0afffffb beq 0x10078
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
337 10088: e51f1060 ldr r1, =0xfffffd00 ; via 0x10030
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
338 1008c: e15f25b0 ldrh r2, =0x1081 ; via 0x10044
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
339 10090: e1c120b0 strh r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
340 10094: e51f1064 ldr r1, =0xfffffb10 ; via 0x10038
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
341 10098: e15f25b6 ldrh r2, =0xf7ff ; via 0x1004a
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
342 1009c: e1d100b0 ldrh r0, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
343 100a0: e0000002 and r0, r0, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
344 100a4: e1c100b0 strh r0, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
345 100a8: e51f1074 ldr r1, =0xffffff08 ; via 0x1003c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
346 100ac: e15f26b8 ldrh r2, =0x0 ; via 0x1004c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
347 100b0: e1c120b0 strh r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
348 100b4: e51f1090 ldr r1, =0xfffffb00 ; via 0x1002c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
349 100b8: e15f2ab4 ldrh r2, =0x2a3 ; via 0x1001c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
350 100bc: e1c120b0 strh r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
351 100c0: e15f2aba ldrh r2, =0x2a3 ; via 0x1001e
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
352 100c4: e1c120b2 strh r2, [r1, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
353 100c8: e15f2bb0 ldrh r2, =0x2a3 ; via 0x10020
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
354 100cc: e1c120b4 strh r2, [r1, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
355 100d0: e15f2bb6 ldrh r2, =0x292 ; via 0x10022
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
356 100d4: e1c120b6 strh r2, [r1, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
357 100d8: e15f2bbc ldrh r2, =0x201 ; via 0x10024
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
358 100dc: e1c120ba strh r2, [r1, #10] ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
359 100e0: e15f2cb2 ldrh r2, =0x2c0 ; via 0x10026
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
360 100e4: e1c120bc strh r2, [r1, #12] ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
361 100e8: e15f2cb8 ldrh r2, =0x40 ; via 0x10028
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
362 100ec: e1c120b8 strh r2, [r1, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
363 100f0: e15f2cbe ldrh r2, =0x2a ; via 0x1002a
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
364 100f4: e1c120be strh r2, [r1, #14] ; 0xe
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
365 ; RTC muck original to BenQ
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
366 100f8: e51f10ac ldr r1, =0xfffe1811 ; via 0x10054
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
367 100fc: e5d12000 ldrb r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
368 10100: e2022001 and r2, r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
369 10104: e3520001 cmp r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
370 10108: 0a000003 beq 0x1011c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
371 1010c: e51f10c4 ldr r1, =0xfffe1800 ; via 0x10050
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
372 10110: e5912000 ldr r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
373 10114: e59f14a8 ldr r1, =0x874cd8 ; via 0x105c4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
374 10118: e5812000 str r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
375 ; back to original TI code
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
376 1011c: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
377 10120: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
378 10124: e3800013 orr r0, r0, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
379 10128: e3800080 orr r0, r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
380 1012c: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
381 ; inline bss clearing, similar but not identical to DSample-20020917 version
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
382 10130: e59f044c ldr r0, =0x1803784 ; via 0x10584
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
383 10134: e3a02000 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
384 10138: e59f1448 ldr r1, =0x1871ad8 ; via 0x10588
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
385 1013c: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
386 10140: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
387 10144: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
388 10148: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
389 1014c: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
390 10150: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
391 10154: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
392 10158: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
393 1015c: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
394 10160: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
395 10164: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
396 10168: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
397 1016c: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
398 10170: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
399 10174: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
400 10178: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
401 1017c: e1500001 cmp r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
402 10180: 4affffed bmi 0x1013c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
403 10184: e59f0400 ldr r0, =0x8296fc ; via 0x1058c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
404 10188: e3a02000 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
405 1018c: e59f13fc ldr r1, =0x873d10 ; via 0x10590
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
406 10190: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
407 10194: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
408 10198: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
409 1019c: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
410 101a0: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
411 101a4: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
412 101a8: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
413 101ac: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
414 101b0: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
415 101b4: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
416 101b8: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
417 101bc: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
418 101c0: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
419 101c4: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
420 101c8: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
421 101cc: e4802004 str r2, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
422 101d0: e1500001 cmp r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
423 101d4: 4affffed bmi 0x10190
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
424 ; 8 MiB memory interface setup, slightly different code than TI's
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
425 101d8: e51f11a0 ldr r1, =0xfffef006 ; via 0x10040
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
426 101dc: e3a02008 mov r2, #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
427 101e0: e1c120b0 strh r2, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
428 ; BenQ's serial interrupt-boot routine
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
429 101e4: ebffdda9 bl 0x7890
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
430 ; return by branch from the above routine
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
431 ; setting _INT_Loaded_Flag?
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
432 101e8: e3a00001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
433 101ec: e59f13a4 ldr r1, =0x1871a34 ; via 0x10598
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
434 101f0: e5810000 str r0, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
435 ; stack setup? - code matches DSample-20020917 version from here
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
436 101f4: e59f0398 ldr r0, =0x8741d4 ; via 0x10594
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
437 101f8: e3a01b01 mov r1, #1024 ; 0x400
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
438 101fc: e2411004 sub r1, r1, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
439 10200: e0802001 add r2, r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
440 10204: e1a0a000 mov r10, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
441 10208: e59f338c ldr r3, =0x82b8a0 ; via 0x1059c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
442 1020c: e583a000 str r10, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
443 10210: e1a0d002 mov sp, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
444 10214: e59f3384 ldr r3, =0x82b9cc ; via 0x105a0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
445 10218: e583d000 str sp, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
446 1021c: e3a01080 mov r1, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
447 10220: e0822001 add r2, r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
448 10224: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
449 10228: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
450 1022c: e3800012 orr r0, r0, #18 ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
451 10230: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
452 10234: e1a0d002 mov sp, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
453 10238: e3a01c02 mov r1, #512 ; 0x200
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
454 1023c: e0822001 add r2, r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
455 10240: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
456 10244: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
457 10248: e3800011 orr r0, r0, #17 ; 0x11
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
458 1024c: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
459 10250: e1a0d002 mov sp, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
460 10254: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
461 10258: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
462 1025c: e3800017 orr r0, r0, #23 ; 0x17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
463 10260: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
464 10264: e59fd348 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
465 10268: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
466 1026c: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
467 10270: e380001b orr r0, r0, #27 ; 0x1b
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
468 10274: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
469 10278: e59fd334 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
470 1027c: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
471 10280: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
472 10284: e3800013 orr r0, r0, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
473 10288: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
474 1028c: e59f3310 ldr r3, =0x82b804 ; via 0x105a4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
475 10290: e2822004 add r2, r2, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
476 10294: e5832000 str r2, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
477 10298: e3a01b01 mov r1, #1024 ; 0x400
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
478 1029c: e3c11003 bic r1, r1, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
479 102a0: e0822001 add r2, r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
480 102a4: e59f32fc ldr r3, =0x82b88c ; via 0x105a8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
481 102a8: e5831000 str r1, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
482 102ac: e3a01002 mov r1, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
483 102b0: e59f32f4 ldr r3, =0x82b89c ; via 0x105ac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
484 102b4: e5831000 str r1, [r3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
485 102b8: e1a04002 mov r4, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
486 102bc: eb08c4c2 bl 0x2415cc ; _f_load_int_mem ?
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
487 102c0: e1a02004 mov r2, r4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
488 102c4: e59f12d0 ldr r1, =0x82b8a0 ; via 0x1059c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
489 102c8: e5910000 ldr r0, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
490 102cc: e3a030fe mov r3, #254 ; 0xfe
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
491 102d0: e5c03000 strb r3, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
492 102d4: e5c03001 strb r3, [r0, #1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
493 102d8: e5c03002 strb r3, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
494 102dc: e5c03003 strb r3, [r0, #3]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
495 102e0: e4903004 ldr r3, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
496 102e4: e4803004 str r3, [r0], #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
497 102e8: e1500002 cmp r0, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
498 102ec: bafffffc blt 0x102e4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
499 102f0: e51f02a0 ldr r0, =0x1063c ; via 0x10058
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
500 102f4: e3700001 cmn r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
501 102f8: 1b0000bd blne 0x105f4 ; _auto_init ?
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
502 102fc: e59f02ac ldr r0, =0x1870bf4 ; via 0x105b0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
503 10300: ea08c4ab b 0x2415b4 ; _INC_Initialize ?
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
504
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
505 10304: 46c04778 <invalid ldr/str: offset reg shift by reg>
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
506 10308: eaffffff b 0x1030c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
507 1030c: e3a00001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
508 10310: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
509 10314: 46c04778 <invalid ldr/str: offset reg shift by reg>
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
510 10318: eaffffff b 0x1031c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
511 1031c: e3a00000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
512 10320: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
513 10324: 46c04778 <invalid ldr/str: offset reg shift by reg>
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
514 10328: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
515 1032c: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
516 10330: e3800012 orr r0, r0, #18 ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
517 10334: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
518 10338: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
519 1033c: e3c00080 bic r0, r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
520 10340: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
521 10344: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
522 10348: e3800013 orr r0, r0, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
523 1034c: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
524 10350: e28f0001 add r0, pc, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
525 10354: e12fff10 bx r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
526 10358: 47784770 <invalid ldr/str: offset reg shift by reg>
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
527 1035c: 46c046c0 strmib r4, [r0], r0, asr #13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
528 10360: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
529 10364: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
530 10368: e3800012 orr r0, r0, #18 ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
531 1036c: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
532 10370: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
533 10374: e3800080 orr r0, r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
534 10378: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
535 1037c: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
536 10380: e3800013 orr r0, r0, #19 ; 0x13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
537 10384: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
538 10388: e28f0001 add r0, pc, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
539 1038c: e12fff10 bx r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
540 10390: 47784770 <invalid ldr/str: offset reg shift by reg>
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
541 10394: 46c046c0 strmib r4, [r0], r0, asr #13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
542 10398: eaffffff b 0x1039c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
543 1039c: e3a00000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
544 103a0: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
545 103a4: e92d000f stmdb sp!, {r0, r1, r2, r3}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
546 103a8: e24e3004 sub r3, lr, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
547 103ac: eb205c69 bl 0x827558
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
548 103b0: eb0877b5 bl 0x22e28c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
549 103b4: ea205cb0 b 0x82767c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
550 103b8: eb0877c1 bl 0x22e2c4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
551 103bc: e59fd1f0 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
552 103c0: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
553 103c4: e51f0394 ldr r0, =0xfffffb10 ; via 0x10038
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
554 103c8: e1d0c0b0 ldrh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
555 103cc: e38ccb02 orr r12, r12, #2048 ; 0x800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
556 103d0: e1c0c0b0 strh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
557 103d4: e3a00001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
558 103d8: ea00004d b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
559 103dc: e59fd1d0 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
560 103e0: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
561 103e4: e51f03b4 ldr r0, =0xfffffb10 ; via 0x10038
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
562 103e8: e1d0c0b0 ldrh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
563 103ec: e38ccb02 orr r12, r12, #2048 ; 0x800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
564 103f0: e1c0c0b0 strh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
565 103f4: e3a00002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
566 103f8: ea000045 b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
567 103fc: e59fd1b0 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
568 10400: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
569 10404: e3a00003 mov r0, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
570 10408: ea000041 b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
571 1040c: e59fd1a0 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
572 10410: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
573 10414: e24ee008 sub lr, lr, #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
574 10418: e3a00004 mov r0, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
575 1041c: ea00003c b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
576 10420: e59fd18c ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
577 10424: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
578 10428: e51f03f8 ldr r0, =0xfffffb10 ; via 0x10038
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
579 1042c: e1d0c0b0 ldrh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
580 10430: e38ccb02 orr r12, r12, #2048 ; 0x800
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
581 10434: e1c0c0b0 strh r12, [r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
582 10438: e3a00005 mov r0, #5
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
583 1043c: ea000034 b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
584
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
585 ; BenQ's 0xDEAD reboot handling path, not studied further
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
586 10440: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
587 10444: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
588 10448: e3800017 orr r0, r0, #23 ; 0x17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
589 1044c: e3800080 orr r0, r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
590 10450: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
591 10454: e92d1001 stmdb sp!, {r0, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
592 10458: e3a00006 mov r0, #6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
593 1045c: ea00002c b 0x10514
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
594 10460: 4700a000 strmi r10, [r0, -r0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
595 10464: eb000040 bl 0x1056c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
596 10468: e1a0100e mov r1, lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
597 1046c: e10f0000 mrs r0, CPSR
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
598 10470: e3c0001f bic r0, r0, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
599 10474: e3800017 orr r0, r0, #23 ; 0x17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
600 10478: e3800080 orr r0, r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
601 1047c: e129f000 msr CPSR_fc, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
602 10480: e3a00080 mov r0, #128 ; 0x80
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
603 10484: eb205a61 bl 0x826e10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
604 10488: e1a0e001 mov lr, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
605 1048c: e59fd120 ldr sp, =0x874118 ; via 0x105b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
606 10490: e59f1130 ldr r1, =0x82ba50 ; via 0x105c8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
607 10494: e5910000 ldr r0, [r1]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
608 10498: e590102c ldr r1, [r0, #44] ; 0x2c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
609 1049c: e59f2114 ldr r2, =0x18522c4 ; via 0x105b8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
610 104a0: e5910004 ldr r0, [r1, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
611 104a4: e5820040 str r0, [r2, #64] ; 0x40
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
612 104a8: e3a00009 mov r0, #9
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
613 104ac: e38004de orr r0, r0, #3724541952 ; 0xde000000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
614 104b0: e38008ad orr r0, r0, #11337728 ; 0xad0000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
615 104b4: e5820044 str r0, [r2, #68] ; 0x44
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
616 104b8: e3a03010 mov r3, #16 ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
617 104bc: e2811008 add r1, r1, #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
618 104c0: e8b10001 ldmia r1!, {r0}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
619 104c4: e8a20001 stmia r2!, {r0}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
620 104c8: e2433001 sub r3, r3, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
621 104cc: e3530000 cmp r3, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
622 104d0: 1afffffa bne 0x104c0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
623 104d4: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
624
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
625 ; This code executes almost immediately out of reset, before TI's
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
626 ; _INT_Initialize assembly init code, and it implements some kind of
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
627 ; reboot check: if the upper 16 bits of the 32-bit word at IRAM address
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
628 ; 0x874ce0 (Calypso IRAM content should be garbage on a cold-powerup)
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
629 ; equal 0xDEAD, the code branches to 0x10440 (must be some kind of
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
630 ; error reboot handling path), otherwise (normal cold power-up path)
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
631 ; the code branches to 0x10068, where we see TI's _INT_Initialize code.
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
632
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
633 104d8: e59fc0dc ldr r12, =0x874ce0 ; via 0x105bc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
634 104dc: e59c0000 ldr r0, [r12]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
635 104e0: e2802000 add r2, r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
636 104e4: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
637 104e8: e38114ff orr r1, r1, #4278190080 ; 0xff000000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
638 104ec: e38118ff orr r1, r1, #16711680 ; 0xff0000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
639 104f0: e0022001 and r2, r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
640 104f4: e3a01000 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
641 104f8: e38114de orr r1, r1, #3724541952 ; 0xde000000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
642 104fc: e38118ad orr r1, r1, #11337728 ; 0xad0000
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
643 10500: e1520001 cmp r2, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
644 10504: 1afffed7 bne 0x10068
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
645 10508: e8bb1007 ldmia r11!, {r0, r1, r2, r12}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
646 1050c: eaffffcb b 0x10440
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
647
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
648 $Init_Target:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
649 ; code mostly matches DSample-20020917 version, diffs noted
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
650 2303dc: b570 push {r4, r5, r6, lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
651 2303de: b081 sub sp, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
652 2303e0: 4d61 ldr r5, =0xfffef006 ; via 0x230568
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
653 2303e2: 2003 mov r0, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
654 2303e4: 0340 lsl r0, r0, #13
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
655 2303e6: 8068 strh r0, [r5, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
656 2303e8: f006 fe71 bl 0x2370ce
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
657 2303ec: 2008 mov r0, #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
658 2303ee: 8829 ldrh r1, [r5, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
659 2303f0: 4308 orr r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
660 2303f2: 8028 strh r0, [r5, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
661 2303f4: 485d ldr r0, =0xfffffd02 ; via 0x23056c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
662 2303f6: 2105 mov r1, #5
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
663 2303f8: 8001 strh r1, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
664 2303fa: 495d ldr r1, =0xff3f ; via 0x230570
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
665 2303fc: 8802 ldrh r2, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
666 2303fe: 4011 and r1, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
667 230400: 8001 strh r1, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
668 230402: 495c ldr r1, =0xffdf ; via 0x230574
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
669 230404: 8802 ldrh r2, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
670 230406: 4011 and r1, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
671 230408: 8001 strh r1, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
672 ; RHEA_CNTL_REG setup: this version writes 0x7F01,
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
673 ; DSample-20020917 writes 0x7F00, TCS211 writes 0xFF00
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
674 23040a: 4e5b ldr r6, =0xfffff900 ; via 0x230578
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
675 23040c: 485b ldr r0, =0x7f01 ; via 0x23057c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
676 23040e: 8030 strh r0, [r6, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
677 ; The PLL setup is the same as in the D-Sample C05 version:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
678 ; the PLL multiplier is set to 6, the DSP runs at 78 MHz
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
679 ; and the ARM runs at 39 MHz.
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
680 230410: 4c5b ldr r4, =0xffff9800 ; via 0x230580
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
681 230412: 485c ldr r0, =0xfff3 ; via 0x230584
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
682 230414: 8821 ldrh r1, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
683 230416: 4008 and r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
684 230418: 8020 strh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
685 23041a: 8820 ldrh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
686 23041c: 8020 strh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
687 23041e: 485a ldr r0, =0xf01f ; via 0x230588
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
688 230420: 8821 ldrh r1, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
689 230422: 4008 and r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
690 230424: 8020 strh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
691 230426: 2003 mov r0, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
692 230428: 0200 lsl r0, r0, #8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
693 23042a: 8821 ldrh r1, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
694 23042c: 4308 orr r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
695 23042e: 8020 strh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
696 ; ARM clock setup: divide by 2 like in TCS211
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
697 230430: 2000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
698 230432: 2102 mov r1, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
699 230434: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
700 230436: f008 fc4f bl 0x238cd8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
701 ; Memory timings (MEMIF setup)
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
702 23043a: 4954 ldr r1, =0xfffffb00 ; via 0x23058c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
703 23043c: 20a3 mov r0, #163 ; 0xa3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
704 23043e: 8008 strh r0, [r1, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
705 230440: 8048 strh r0, [r1, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
706 230442: 8088 strh r0, [r1, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
707 230444: 2092 mov r0, #146 ; 0x92
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
708 230446: 80c8 strh r0, [r1, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
709 230448: 2085 mov r0, #133 ; 0x85
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
710 23044a: 8148 strh r0, [r1, #10] ; 0xa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
711 23044c: 200b mov r0, #11 ; 0xb
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
712 23044e: 0180 lsl r0, r0, #6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
713 230450: 8188 strh r0, [r1, #12] ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
714 230452: 2040 mov r0, #64 ; 0x40
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
715 230454: 8108 strh r0, [r1, #8]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
716 230456: 2020 mov r0, #32 ; 0x20
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
717 230458: 8070 strh r0, [r6, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
718 23045a: 2000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
719 23045c: 80b0 strh r0, [r6, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
720 23045e: 2010 mov r0, #16 ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
721 230460: 8821 ldrh r1, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
722 230462: 4308 orr r0, r1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
723 230464: 8020 strh r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
724 230466: 484a ldr r0, =0xfffffa08 ; via 0x230590
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
725 230468: 494a ldr r1, =0xffff ; via 0x230594
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
726 23046a: 8001 strh r1, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
727 23046c: 261f mov r6, #31 ; 0x1f
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
728 23046e: 8046 strh r6, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
729 230470: 2103 mov r1, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
730 230472: 8181 strh r1, [r0, #12] ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
731 230474: f005 fa9e bl 0x2359b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
732 230478: 4847 ldr r0, =0xfffffc00 ; via 0x230598
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
733 23047a: 2124 mov r1, #36 ; 0x24
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
734 23047c: 8001 strh r1, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
735 23047e: 210d mov r1, #13 ; 0xd
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
736 230480: 8041 strh r1, [r0, #2]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
737 230482: 2400 mov r4, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
738 230484: 4845 ldr r0, =0xfffe2016 ; via 0x23059c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
739 230486: 8004 strh r4, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
740 230488: 4945 ldr r1, =0xfffe2014 ; via 0x2305a0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
741 23048a: 2002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
742 23048c: 8008 strh r0, [r1, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
743 23048e: 4945 ldr r1, =0xfffe2002 ; via 0x2305a4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
744 230490: 2084 mov r0, #132 ; 0x84
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
745 230492: 8008 strh r0, [r1, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
746 230494: 4944 ldr r1, =0xfffe2000 ; via 0x2305a8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
747 230496: 4845 ldr r0, =0x3de0 ; via 0x2305ac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
748 230498: 8008 strh r0, [r1, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
749 23049a: 4a45 ldr r2, =0xfffe2022 ; via 0x2305b0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
750 23049c: 2009 mov r0, #9
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
751 23049e: 8010 strh r0, [r2, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
752 2304a0: 4a44 ldr r2, =0xfffe2020 ; via 0x2305b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
753 2304a2: 4845 ldr r0, =0x45a ; via 0x2305b8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
754 2304a4: 8010 strh r0, [r2, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
755 2304a6: 4a45 ldr r2, =0xfffe201e ; via 0x2305bc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
756 2304a8: 20b4 mov r0, #180 ; 0xb4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
757 2304aa: 8010 strh r0, [r2, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
758 2304ac: 4844 ldr r0, =0xfffe201c ; via 0x2305c0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
759 2304ae: 8006 strh r6, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
760 2304b0: 4844 ldr r0, =0xfffe2024 ; via 0x2305c4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
761 2304b2: 8004 strh r4, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
762 2304b4: 4b44 ldr r3, =0xfffe2010 ; via 0x2305c8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
763 2304b6: 2002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
764 2304b8: 881a ldrh r2, [r3, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
765 2304ba: 4310 orr r0, r2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
766 2304bc: 8018 strh r0, [r3, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
767 2304be: 4a42 ldr r2, =0xfffe2010 ; via 0x2305c8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
768 2304c0: 2004 mov r0, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
769 2304c2: 8813 ldrh r3, [r2, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
770 2304c4: 4318 orr r0, r3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
771 2304c6: 8010 strh r0, [r2, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
772 2304c8: 2027 mov r0, #39 ; 0x27
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
773 2304ca: 80e8 strh r0, [r5, #6]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
774 2304cc: 8a08 ldrh r0, [r1, #16] ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
775 2304ce: 0840 lsr r0, r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
776 2304d0: d310 bcc 0x2304f4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
777 2304d2: 8a08 ldrh r0, [r1, #16] ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
778 2304d4: 0400 lsl r0, r0, #16
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
779 2304d6: 0c40 lsr r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
780 2304d8: 0040 lsl r0, r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
781 2304da: 8208 strh r0, [r1, #16] ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
782 2304dc: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
783 2304de: 9000 str r0, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
784 2304e0: e002 b 0x2304e8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
785 2304e2: 9800 ldr r0, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
786 2304e4: 3001 add r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
787 2304e6: 9000 str r0, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
788 2304e8: 9800 ldr r0, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
789 2304ea: 2832 cmp r0, #50 ; 0x32
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
790 2304ec: d3f9 bcc 0x2304e2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
791 2304ee: 8a48 ldrh r0, [r1, #18] ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
792 2304f0: 2800 cmp r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
793 2304f2: d0fc beq 0x2304ee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
794 2304f4: f00a fd61 bl 0x23afba
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
795 2304f8: f00a fd65 bl 0x23afc6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
796 2304fc: 2005 mov r0, #5
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
797 2304fe: 05c0 lsl r0, r0, #23
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
798 230500: 7004 strb r4, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
799 230502: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
800 230504: f006 fdf1 bl 0x2370ea
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
801 230508: 2002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
802 23050a: f006 fdee bl 0x2370ea
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
803 23050e: b001 add sp, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
804 230510: bd70 pop {r4, r5, r6, pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
805
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
806 $Init_Drivers:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
807 230512: b500 push {lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
808 230514: f7ce febd bl 0x1ff292
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
809 230518: f795 fd44 bl 0x1c5fa4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
810 23051c: f7e0 f928 bl 0x210770
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
811 230520: f735 fb88 bl 0x165c34
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
812 230524: bd00 pop {pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
813
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
814 $Init_Serial_Flows:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
815 230526: b500 push {lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
816 230528: 4828 ldr r0, =0x1870ba8 ; via 0x2305cc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
817 23052a: f75a f817 bl 0x18a55c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
818 23052e: 2000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
819 230530: 2102 mov r1, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
820 230532: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
821 230534: f75a fd1a bl 0x18af6c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
822 230538: f75a fd77 bl 0x18b02a
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
823 23053c: bd00 pop {pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
824
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
825 $Init_Unmask_IT:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
826 23053e: b500 push {lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
827 230540: 2004 mov r0, #4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
828 230542: f005 fa98 bl 0x235a76
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
829 230546: 2012 mov r0, #18 ; 0x12
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
830 230548: f005 fa95 bl 0x235a76
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
831 23054c: 2007 mov r0, #7
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
832 23054e: f005 fa92 bl 0x235a76
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
833 230552: 2011 mov r0, #17 ; 0x11
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
834 230554: f005 fa8f bl 0x235a76
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
835 230558: bd00 pop {pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
836
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
837 ; same 6 empty functions as in the DSample-20020917 version
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
838 23055a: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
839 23055c: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
840 23055e: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
841 230560: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
842 230562: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
843 230564: 4770 bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
844
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
845 $Application_Initialize:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
846 23a19e: b5f0 push {r4, r5, r6, r7, lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
847 23a1a0: b084 sub sp, #16 ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
848 23a1a2: 4c3f ldr r4, =0x800000 ; via 0x23a2a0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
849 23a1a4: 483f ldr r0, =0x8296f8 ; via 0x23a2a4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
850 23a1a6: 1b00 sub r0, r0, r4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
851 23a1a8: 1c46 add r6, r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
852 23a1aa: 2500 mov r5, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
853 23a1ac: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
854 23a1ae: 0440 lsl r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
855 23a1b0: 4286 cmp r6, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
856 23a1b2: d920 bls 0x23a1f6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
857 23a1b4: 2701 mov r7, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
858 23a1b6: 9400 str r4, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
859 23a1b8: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
860 23a1ba: 0440 lsl r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
861 23a1bc: 9001 str r0, [sp, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
862 23a1be: 1c28 add r0, r5, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
863 23a1c0: 2103 mov r1, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
864 23a1c2: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
865 23a1c4: 2301 mov r3, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
866 23a1c6: f004 faab bl 0x23e720
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
867 23a1ca: 1c68 add r0, r5, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
868 23a1cc: 0600 lsl r0, r0, #24
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
869 23a1ce: 0e05 lsr r5, r0, #24
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
870 23a1d0: 2d02 cmp r5, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
871 23a1d2: d100 bne 0x23a1d6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
872 23a1d4: 2700 mov r7, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
873 23a1d6: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
874 23a1d8: 0440 lsl r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
875 23a1da: 1904 add r4, r0, r4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
876 23a1dc: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
877 23a1de: 0440 lsl r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
878 23a1e0: 1a36 sub r6, r6, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
879 23a1e2: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
880 23a1e4: 0440 lsl r0, r0, #17
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
881 23a1e6: 4286 cmp r6, r0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
882 23a1e8: d901 bls 0x23a1ee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
883 23a1ea: 2f01 cmp r7, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
884 23a1ec: d0e3 beq 0x23a1b6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
885 23a1ee: 2e00 cmp r6, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
886 23a1f0: d009 beq 0x23a206
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
887 23a1f2: 2f01 cmp r7, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
888 23a1f4: d107 bne 0x23a206
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
889 23a1f6: 9400 str r4, [sp, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
890 23a1f8: 9601 str r6, [sp, #4]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
891 23a1fa: 1c28 add r0, r5, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
892 23a1fc: 2103 mov r1, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
893 23a1fe: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
894 23a200: 2301 mov r3, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
895 23a202: f004 fa8d bl 0x23e720
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
896 23a206: f7f6 f8e9 bl 0x2303dc ; $Init_Target
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
897 23a20a: 4827 ldr r0, =0x1870bf0 ; via 0x23a2a8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
898 23a20c: 7800 ldrb r0, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
899 23a20e: 2820 cmp r0, #32 ; 0x20
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
900 23a210: d122 bne 0x23a258
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
901 23a212: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
902 23a214: 2100 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
903 23a216: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
904 23a218: f7bc fdca bl 0x1f6db0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
905 23a21c: f6d2 fb45 bl 0x10c8aa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
906 23a220: f6d2 fb4a bl 0x10c8b8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
907 23a224: 2800 cmp r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
908 23a226: d106 bne 0x23a236
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
909 23a228: 4669 mov r1, sp
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
910 23a22a: 20ee mov r0, #238 ; 0xee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
911 23a22c: 7308 strb r0, [r1, #12] ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
912 23a22e: 4668 mov r0, sp
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
913 23a230: 21aa mov r1, #170 ; 0xaa
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
914 23a232: 7341 strb r1, [r0, #13] ; 0xd
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
915 23a234: e004 b 0x23a240
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
916 23a236: 4668 mov r0, sp
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
917 23a238: 21ee mov r1, #238 ; 0xee
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
918 23a23a: 7301 strb r1, [r0, #12] ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
919 23a23c: 21ff mov r1, #255 ; 0xff
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
920 23a23e: 7341 strb r1, [r0, #13] ; 0xd
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
921 23a240: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
922 23a242: a903 add r1, sp, #12 ; 0xc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
923 23a244: 2202 mov r2, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
924 23a246: f7bc ff28 bl 0x1f709a
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
925 23a24a: 2802 cmp r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
926 23a24c: d1f8 bne 0x23a240
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
927 23a24e: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
928 23a250: 213c mov r1, #60 ; 0x3c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
929 23a252: 2201 mov r2, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
930 23a254: f771 fbb8 bl 0x1ab9c8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
931 23a258: f7f6 f95b bl 0x230512 ; $Init_Drivers
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
932 23a25c: f008 f99c bl 0x242598
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
933 23a260: f7f6 f961 bl 0x230526 ; $Init_Serial_Flows
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
934 23a264: f796 f878 bl 0x1d0358
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
935 23a268: f004 ffc5 bl 0x23f1f6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
936 23a26c: 2000 mov r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
937 23a26e: f002 fcdf bl 0x23cc30
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
938 23a272: 480e ldr r0, =0xffff ; via 0x23a2ac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
939 23a274: 2100 mov r1, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
940 23a276: 2200 mov r2, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
941 23a278: 2301 mov r3, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
942 23a27a: f002 fc94 bl 0x23cba6
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
943 23a27e: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
944 23a280: f002 fcd6 bl 0x23cc30
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
945 23a284: f7f6 f95b bl 0x23053e ; $Init_Unmask_IT
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
946 23a288: 2002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
947 23a28a: 2103 mov r1, #3
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
948 23a28c: f008 f884 bl 0x242398
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
949 23a290: 4807 ldr r0, =0x187036c ; via 0x23a2b0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
950 23a292: 6800 ldr r0, [r0, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
951 23a294: 4907 ldr r1, =0x187037c ; via 0x23a2b4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
952 23a296: 6809 ldr r1, [r1, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
953 23a298: f008 f876 bl 0x242388
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
954 23a29c: b004 add sp, #16 ; 0x10
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
955 23a29e: bdf0 pop {r4, r5, r6, r7, pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
956
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
957 $INC_Initialize:
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
958 2405c8: b530 push {r4, r5, lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
959 2405ca: 1c05 add r5, r0, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
960 2405cc: 4c13 ldr r4, =0x1871a1c ; via 0x24061c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
961 2405ce: 2001 mov r0, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
962 2405d0: 6020 str r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
963 2405d2: f001 f929 bl 0x241828
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
964 2405d6: f001 f92b bl 0x241830
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
965 2405da: f001 f8e7 bl 0x2417ac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
966 2405de: f000 fcf1 bl 0x240fc4
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
967 2405e2: f7fc f8f9 bl 0x23c7d8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
968 2405e6: f000 fed1 bl 0x24138c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
969 2405ea: f000 fe9f bl 0x24132c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
970 2405ee: f000 febd bl 0x24136c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
971 2405f2: f000 fe8b bl 0x24130c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
972 2405f6: f000 fee9 bl 0x2413cc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
973 2405fa: f000 fea7 bl 0x24134c
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
974 2405fe: f000 fef5 bl 0x2413ec
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
975 240602: f7fe f947 bl 0x23e894
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
976 240606: f000 fed1 bl 0x2413ac
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
977 24060a: 1c28 add r0, r5, #0
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
978 24060c: f7f9 fdc7 bl 0x23a19e ; app init
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
979 240610: 2002 mov r0, #2
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
980 240612: 6020 str r0, [r4, #0]
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
981 240614: f001 fe70 bl 0x2422f8 ; $TCT_Schedule veneer
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
982 240618: bd30 pop {r4, r5, pc}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
983
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
984 ; _INC_Initialize call veneer
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
985 2415b4: e92d4000 stmdb sp!, {lr}
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
986 2415b8: e28fe001 add lr, pc, #1
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
987 2415bc: e12fff1e bx lr
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
988 2415c0: f7ff f802 bl 0x2405c8
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
989 2415c4: 4778 bx pc
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
990 2415c6: 46c0 nop (mov r8, r8)
42575bc59702 benq-fw-disasm: dug a little into BenQ's M32 firmware
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
991 2415c8: e8bd8000 ldmia sp!, {pc}