changeset 266:bb46e9f67cd5

dsample-fw-disasm: found apparent beginning of the tpudrv10 module
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 18 Jan 2018 17:12:17 +0000
parents d15f701b1434
children ace3136d0601
files dsample-fw-disasm
diffstat 1 files changed, 261 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/dsample-fw-disasm	Thu Jan 18 08:03:03 2018 +0000
+++ b/dsample-fw-disasm	Thu Jan 18 17:12:17 2018 +0000
@@ -958,6 +958,267 @@
   803c34:	b004		add	sp, #16	; 0x10
   803c36:	bd00		pop	{pc}
 
+; apparent beginning of tpudrv10 module
+
+  811df8:	b500		push	{lr}
+  811dfa:	b084		sub	sp, #16	; 0x10
+  811dfc:	4669		mov	r1, sp
+  811dfe:	8008		strh	r0, [r1, #0]
+  811e00:	2014		mov	r0, #20	; 0x14
+  811e02:	49c6		ldr	r1, =0x83c0a1	; via 0x81211c
+  811e04:	7809		ldrb	r1, [r1, #0]
+  811e06:	4348		mul	r0, r1
+  811e08:	49c3		ldr	r1, =0x83c054	; via 0x812118
+  811e0a:	5808		ldr	r0, [r1, r0]
+  811e0c:	9003		str	r0, [sp, #12]	; 0xc
+  811e0e:	9803		ldr	r0, [sp, #12]	; 0xc
+  811e10:	8801		ldrh	r1, [r0, #0]
+  811e12:	4668		mov	r0, sp
+  811e14:	8800		ldrh	r0, [r0, #0]
+  811e16:	4281		cmp	r1, r0
+  811e18:	da08		bge	0x811e2c
+  811e1a:	9803		ldr	r0, [sp, #12]	; 0xc
+  811e1c:	3004		add	r0, #4
+  811e1e:	9003		str	r0, [sp, #12]	; 0xc
+  811e20:	9803		ldr	r0, [sp, #12]	; 0xc
+  811e22:	8800		ldrh	r0, [r0, #0]
+  811e24:	4669		mov	r1, sp
+  811e26:	8809		ldrh	r1, [r1, #0]
+  811e28:	4288		cmp	r0, r1
+  811e2a:	dbf6		blt	0x811e1a
+  811e2c:	4669		mov	r1, sp
+  811e2e:	9803		ldr	r0, [sp, #12]	; 0xc
+  811e30:	8840		ldrh	r0, [r0, #2]
+  811e32:	0040		lsl	r0, r0, #1
+  811e34:	80c8		strh	r0, [r1, #6]
+  811e36:	4668		mov	r0, sp
+  811e38:	88c0		ldrh	r0, [r0, #6]
+  811e3a:	210d		mov	r1, #13	; 0xd
+  811e3c:	f002 fd8e	bl	0x81495c
+  811e40:	4668		mov	r0, sp
+  811e42:	8101		strh	r1, [r0, #8]
+  811e44:	8900		ldrh	r0, [r0, #8]
+  811e46:	1081		asr	r1, r0, #2
+  811e48:	0f49		lsr	r1, r1, #29
+  811e4a:	1808		add	r0, r1, r0
+  811e4c:	10c1		asr	r1, r0, #3
+  811e4e:	4668		mov	r0, sp
+  811e50:	8041		strh	r1, [r0, #2]
+  811e52:	8901		ldrh	r1, [r0, #8]
+  811e54:	8840		ldrh	r0, [r0, #2]
+  811e56:	00c0		lsl	r0, r0, #3
+  811e58:	1a09		sub	r1, r1, r0
+  811e5a:	4668		mov	r0, sp
+  811e5c:	8081		strh	r1, [r0, #4]
+  811e5e:	8880		ldrh	r0, [r0, #4]
+  811e60:	0740		lsl	r0, r0, #29
+  811e62:	0f40		lsr	r0, r0, #29
+  811e64:	0141		lsl	r1, r0, #5
+  811e66:	4668		mov	r0, sp
+  811e68:	8840		ldrh	r0, [r0, #2]
+  811e6a:	0680		lsl	r0, r0, #26
+  811e6c:	0e80		lsr	r0, r0, #26
+  811e6e:	0200		lsl	r0, r0, #8
+  811e70:	4301		orr	r1, r0
+  811e72:	0408		lsl	r0, r1, #16
+  811e74:	0c00		lsr	r0, r0, #16
+  811e76:	b004		add	sp, #16	; 0x10
+  811e78:	bd00		pop	{pc}
+
+  811e7a:	b500		push	{lr}
+  811e7c:	b08d		sub	sp, #52	; 0x34
+  811e7e:	466a		mov	r2, sp
+  811e80:	7091		strb	r1, [r2, #2]
+  811e82:	4669		mov	r1, sp
+  811e84:	8008		strh	r0, [r1, #0]
+  811e86:	2014		mov	r0, #20	; 0x14
+  811e88:	49a4		ldr	r1, =0x83c0a1	; via 0x81211c
+  811e8a:	7809		ldrb	r1, [r1, #0]
+  811e8c:	4348		mul	r0, r1
+  811e8e:	49a4		ldr	r1, =0x83c050	; via 0x812120
+  811e90:	5808		ldr	r0, [r1, r0]
+  811e92:	900c		str	r0, [sp, #48]	; 0x30
+  811e94:	980c		ldr	r0, [sp, #48]	; 0x30
+  811e96:	8881		ldrh	r1, [r0, #4]
+  811e98:	4668		mov	r0, sp
+  811e9a:	8800		ldrh	r0, [r0, #0]
+  811e9c:	4281		cmp	r1, r0
+  811e9e:	da08		bge	0x811eb2
+  811ea0:	980c		ldr	r0, [sp, #48]	; 0x30
+  811ea2:	3018		add	r0, #24	; 0x18
+  811ea4:	900c		str	r0, [sp, #48]	; 0x30
+  811ea6:	980c		ldr	r0, [sp, #48]	; 0x30
+  811ea8:	8881		ldrh	r1, [r0, #4]
+  811eaa:	4668		mov	r0, sp
+  811eac:	8800		ldrh	r0, [r0, #0]
+  811eae:	4281		cmp	r1, r0
+  811eb0:	dbf6		blt	0x811ea0
+  811eb2:	2014		mov	r0, #20	; 0x14
+  811eb4:	4999		ldr	r1, =0x83c0a1	; via 0x81211c
+  811eb6:	7809		ldrb	r1, [r1, #0]
+  811eb8:	4348		mul	r0, r1
+  811eba:	4997		ldr	r1, =0x83c054	; via 0x812118
+  811ebc:	5808		ldr	r0, [r1, r0]
+  811ebe:	900a		str	r0, [sp, #40]	; 0x28
+  811ec0:	980a		ldr	r0, [sp, #40]	; 0x28
+  811ec2:	8801		ldrh	r1, [r0, #0]
+  811ec4:	4668		mov	r0, sp
+  811ec6:	8800		ldrh	r0, [r0, #0]
+  811ec8:	4281		cmp	r1, r0
+  811eca:	da08		bge	0x811ede
+  811ecc:	980a		ldr	r0, [sp, #40]	; 0x28
+  811ece:	3004		add	r0, #4
+  811ed0:	900a		str	r0, [sp, #40]	; 0x28
+  811ed2:	980a		ldr	r0, [sp, #40]	; 0x28
+  811ed4:	8801		ldrh	r1, [r0, #0]
+  811ed6:	4668		mov	r0, sp
+  811ed8:	8800		ldrh	r0, [r0, #0]
+  811eda:	4281		cmp	r1, r0
+  811edc:	dbf6		blt	0x811ecc
+  811ede:	980a		ldr	r0, [sp, #40]	; 0x28
+  811ee0:	8840		ldrh	r0, [r0, #2]
+  811ee2:	9009		str	r0, [sp, #36]	; 0x24
+  811ee4:	4668		mov	r0, sp
+  811ee6:	7880		ldrb	r0, [r0, #2]
+  811ee8:	2800		cmp	r0, #0
+  811eea:	d026		beq	0x811f3a
+  811eec:	488d		ldr	r0, =0x27627	; via 0x812124
+  811eee:	990c		ldr	r1, [sp, #48]	; 0x30
+  811ef0:	7b09		ldrb	r1, [r1, #12]	; 0xc
+  811ef2:	4348		mul	r0, r1
+  811ef4:	3008		add	r0, #8
+  811ef6:	9008		str	r0, [sp, #32]	; 0x20
+  811ef8:	980c		ldr	r0, [sp, #48]	; 0x30
+  811efa:	6880		ldr	r0, [r0, #8]
+  811efc:	0081		lsl	r1, r0, #2
+  811efe:	1841		add	r1, r0, r1
+  811f00:	4668		mov	r0, sp
+  811f02:	8800		ldrh	r0, [r0, #0]
+  811f04:	1841		add	r1, r0, r1
+  811f06:	980c		ldr	r0, [sp, #48]	; 0x30
+  811f08:	6800		ldr	r0, [r0, #0]
+  811f0a:	1a08		sub	r0, r1, r0
+  811f0c:	9007		str	r0, [sp, #28]	; 0x1c
+  811f0e:	9807		ldr	r0, [sp, #28]	; 0x1c
+  811f10:	990c		ldr	r1, [sp, #48]	; 0x30
+  811f12:	7b09		ldrb	r1, [r1, #12]	; 0xc
+  811f14:	4348		mul	r0, r1
+  811f16:	4669		mov	r1, sp
+  811f18:	8088		strh	r0, [r1, #4]
+  811f1a:	4668		mov	r0, sp
+  811f1c:	8880		ldrh	r0, [r0, #4]
+  811f1e:	0540		lsl	r0, r0, #21
+  811f20:	9006		str	r0, [sp, #24]	; 0x18
+  811f22:	9808		ldr	r0, [sp, #32]	; 0x20
+  811f24:	9907		ldr	r1, [sp, #28]	; 0x1c
+  811f26:	4348		mul	r0, r1
+  811f28:	9005		str	r0, [sp, #20]	; 0x14
+  811f2a:	2014		mov	r0, #20	; 0x14
+  811f2c:	497b		ldr	r1, =0x83c0a1	; via 0x81211c
+  811f2e:	7809		ldrb	r1, [r1, #0]
+  811f30:	4348		mul	r0, r1
+  811f32:	497d		ldr	r1, =0x83c058	; via 0x812128
+  811f34:	5808		ldr	r0, [r1, r0]
+  811f36:	900b		str	r0, [sp, #44]	; 0x2c
+  811f38:	e024		b	0x811f84
+  811f3a:	487c		ldr	r0, =0x2762f	; via 0x81212c
+  811f3c:	9008		str	r0, [sp, #32]	; 0x20
+  811f3e:	980c		ldr	r0, [sp, #48]	; 0x30
+  811f40:	6900		ldr	r0, [r0, #16]	; 0x10
+  811f42:	0081		lsl	r1, r0, #2
+  811f44:	1840		add	r0, r0, r1
+  811f46:	4669		mov	r1, sp
+  811f48:	8809		ldrh	r1, [r1, #0]
+  811f4a:	1809		add	r1, r1, r0
+  811f4c:	980c		ldr	r0, [sp, #48]	; 0x30
+  811f4e:	6800		ldr	r0, [r0, #0]
+  811f50:	1a08		sub	r0, r1, r0
+  811f52:	9007		str	r0, [sp, #28]	; 0x1c
+  811f54:	2114		mov	r1, #20	; 0x14
+  811f56:	980c		ldr	r0, [sp, #48]	; 0x30
+  811f58:	5609		ldrsb	r1, [r1, r0]
+  811f5a:	9809		ldr	r0, [sp, #36]	; 0x24
+  811f5c:	4348		mul	r0, r1
+  811f5e:	9907		ldr	r1, [sp, #28]	; 0x1c
+  811f60:	1841		add	r1, r0, r1
+  811f62:	4668		mov	r0, sp
+  811f64:	8081		strh	r1, [r0, #4]
+  811f66:	8880		ldrh	r0, [r0, #4]
+  811f68:	0540		lsl	r0, r0, #21
+  811f6a:	9006		str	r0, [sp, #24]	; 0x18
+  811f6c:	2114		mov	r1, #20	; 0x14
+  811f6e:	980c		ldr	r0, [sp, #48]	; 0x30
+  811f70:	5609		ldrsb	r1, [r1, r0]
+  811f72:	9809		ldr	r0, [sp, #36]	; 0x24
+  811f74:	4348		mul	r0, r1
+  811f76:	9907		ldr	r1, [sp, #28]	; 0x1c
+  811f78:	1841		add	r1, r0, r1
+  811f7a:	9808		ldr	r0, [sp, #32]	; 0x20
+  811f7c:	4348		mul	r0, r1
+  811f7e:	9005		str	r0, [sp, #20]	; 0x14
+  811f80:	486b		ldr	r0, =0x83bea8	; via 0x812130
+  811f82:	900b		str	r0, [sp, #44]	; 0x2c
+  811f84:	980b		ldr	r0, [sp, #44]	; 0x2c
+  811f86:	8801		ldrh	r1, [r0, #0]
+  811f88:	4668		mov	r0, sp
+  811f8a:	8880		ldrh	r0, [r0, #4]
+  811f8c:	4281		cmp	r1, r0
+  811f8e:	da08		bge	0x811fa2
+  811f90:	980b		ldr	r0, [sp, #44]	; 0x2c
+  811f92:	3004		add	r0, #4
+  811f94:	900b		str	r0, [sp, #44]	; 0x2c
+  811f96:	980b		ldr	r0, [sp, #44]	; 0x2c
+  811f98:	8801		ldrh	r1, [r0, #0]
+  811f9a:	4668		mov	r0, sp
+  811f9c:	8880		ldrh	r0, [r0, #4]
+  811f9e:	4281		cmp	r1, r0
+  811fa0:	dbf6		blt	0x811f90
+  811fa2:	4964		ldr	r1, =0x83be2c	; via 0x812134
+  811fa4:	980b		ldr	r0, [sp, #44]	; 0x2c
+  811fa6:	7880		ldrb	r0, [r0, #2]
+  811fa8:	0740		lsl	r0, r0, #29
+  811faa:	0f40		lsr	r0, r0, #29
+  811fac:	0140		lsl	r0, r0, #5
+  811fae:	7008		strb	r0, [r1, #0]
+  811fb0:	9805		ldr	r0, [sp, #20]	; 0x14
+  811fb2:	2110		mov	r1, #16	; 0x10
+  811fb4:	f001 fe92	bl	0x813cdc
+  811fb8:	0d48		lsr	r0, r1, #21
+  811fba:	9002		str	r0, [sp, #8]
+  811fbc:	9905		ldr	r1, [sp, #20]	; 0x14
+  811fbe:	9802		ldr	r0, [sp, #8]
+  811fc0:	0640		lsl	r0, r0, #25
+  811fc2:	1a08		sub	r0, r1, r0
+  811fc4:	0d40		lsr	r0, r0, #21
+  811fc6:	9003		str	r0, [sp, #12]	; 0xc
+  811fc8:	9903		ldr	r1, [sp, #12]	; 0xc
+  811fca:	9802		ldr	r0, [sp, #8]
+  811fcc:	0100		lsl	r0, r0, #4
+  811fce:	1809		add	r1, r1, r0
+  811fd0:	200d		mov	r0, #13	; 0xd
+  811fd2:	0540		lsl	r0, r0, #21
+  811fd4:	4348		mul	r0, r1
+  811fd6:	9906		ldr	r1, [sp, #24]	; 0x18
+  811fd8:	1a08		sub	r0, r1, r0
+  811fda:	0d40		lsr	r0, r0, #21
+  811fdc:	9004		str	r0, [sp, #16]	; 0x10
+  811fde:	9803		ldr	r0, [sp, #12]	; 0xc
+  811fe0:	0700		lsl	r0, r0, #28
+  811fe2:	0f00		lsr	r0, r0, #28
+  811fe4:	0300		lsl	r0, r0, #12
+  811fe6:	9902		ldr	r1, [sp, #8]
+  811fe8:	0649		lsl	r1, r1, #25
+  811fea:	0e49		lsr	r1, r1, #25
+  811fec:	0409		lsl	r1, r1, #16
+  811fee:	4308		orr	r0, r1
+  811ff0:	9904		ldr	r1, [sp, #16]	; 0x10
+  811ff2:	0709		lsl	r1, r1, #28
+  811ff4:	0f09		lsr	r1, r1, #28
+  811ff6:	0209		lsl	r1, r1, #8
+  811ff8:	4308		orr	r0, r1
+  811ffa:	b00d		add	sp, #52	; 0x34
+  811ffc:	bd00		pop	{pc}
+
 $Convert_l1_radio_freq:
   811ffe:	b081		sub	sp, #4
   812000:	4669		mov	r1, sp