FreeCalypso > hg > fc-magnetite
annotate fcdev3b-hacks/src/romvecs-insert.S @ 597:f18b29e27be5
First attempt at MCSI voice path automatic switching
The function is implemented at the ACI level in both aci2 and aci3,
successfully avoids triggering the DSP bug on the first call,
but the shutdown of MCSI upon call completion is not working properly yet
in either version.
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Wed, 27 Mar 2019 22:18:35 +0000 |
| parents | 8d9298e0823a |
| children |
| rev | line source |
|---|---|
|
467
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 .text |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 .code 32 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 .globl _entry |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 _entry: adr r0, vectors |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 ldmia r0, {r1-r7} |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 mov r0, #0x800000 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 stmia r0, {r1-r7} |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 ldr pc, jumpaddr |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 vectors: |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 .word 0x4000 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 .word 0x4004 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 .word 0x4008 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 .word 0x400C |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 .word 0x4010 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 .word 0x4014 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 .word 0x4018 |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 jumpaddr: |
|
3285960cc1b9
romvecs-patch: experimental insert code written
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 .word 0x4058 |
