ich habe seit Wochen vor, einen Hook zu schreiben, mit dem man den aktiven Tuner herausbekommt. Da ich doch nicht dazu komme, selbst diese Kleinigkeit zu programmieren, hier eine erst mal rein theoretische Anleitung, falls das jemand anderer machen möchte.
Errata sind sehr wahrscheinlich, da vollkommen aus dem Kopf geschrieben (da wo ich nicht sicher bin folgt ein (?).
1.) Man schaue sich DeadBeefs Quellcode für die Display Tap Library (?) an. Dort entnimmt man, wie man die Funktion TAP-GetTime (?) kopiert, in diesem Fall um Firmwarefunktionen aufzurufen zu können.
2.) Man kopiere auf diese Weise TAP_GetSignalQuality, das ergibt bei der akuten FW vom TF5x00:
Code: Alles auswählen
0r 8018f0b4: 27bdffe0 addiu $sp,-32
4r 8018f0b8: afbe001c sw $fp,28($sp)
8r 8018f0bc: 3c1e8018 lui $fp,0x8018
cr 8018f0c0: afbf0014 sw $ra,20($sp)
10r 8018f0c4: 27de6674 addiu $fp,26228=0x6674 # 80186674 VAR_TabIdent -> 0
14r 8018f0c8: afb60018 sw $s6,24($sp)
18r 8018f0cc: 8fcf0000 lw $t7,0($fp)
1cr 8018f0d0: 3c168018 lui $s6,0x8018
20r 8018f0d4: 26d66474 addiu $s6,25716=0x6474 # 80186474 VAR_TabTable -> 0
24r 8018f0d8: 000f7940 sll $t7,5
28r 8018f0dc: 02cf7821 addu $t7,$s6
2cr 8018f0e0: 8de30000 lw $v1,0($t7)
30r 8018f0e4: 00000000 nop
34r 8018f0e8: 00000000 nop
38r 8018f0ec: 03801025 move $v0,$gp
3cr 8018f0f0: 00000000 nop
40r 8018f0f4: 00000000 nop
44r 8018f0f8: 0060e025 move $gp,$v1
48r 8018f0fc: 8f999ec4 lw $t9,-24892($gp) # 803814f4 @ptrEepromETC
4cr 8018f100: 27a50010 addiu $a1,$sp,16=0x0010
50r 8018f104: 0c06c07b jal 0x801b01ec #
54r 8018f108: 93240015 lbu $a0,21($t9)
58r 8018f10c: 8fcf0000 lw $t7,0($fp)
5cr 8018f110: 000f7940 sll $t7,5
60r 8018f114: 02cf7821 addu $t7,$s6
64r 8018f118: 8dfe0004 lw $fp,4($t7)
68r 8018f11c: 00000000 nop
6cr 8018f120: 00000000 nop
70r 8018f124: 03801025 move $v0,$gp
74r 8018f128: 00000000 nop
78r 8018f12c: 00000000 nop
7cr 8018f130: 03c0e025 move $gp,$fp
80r 8018f134: 93a20010 lbu $v0,16($sp)
84r 8018f138: 8fbf0014 lw $ra,20($sp)
88r 8018f13c: 8fb60018 lw $s6,24($sp)
8cr 8018f140: 8fbe001c lw $fp,28($sp)
90r 8018f144: 03e00008 jr $ra
94r 8018f148: 27bd0020 addiu $sp,32
4.) Man suche und ersetzte lbu $v0,16($sp) durch addiu $v0,0,$a0
Für Support stehe ich aus beruflichen Gründen die nächste Zeit leider kaum zur Verfügung (sonst hätte ich es auch selber gemacht).