爱技术

 找回密码
 注册会员

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 1338|回复: 29
收起左侧

[教程] 由提高扬声器音量的Flash修改想到的

[复制链接]
发表于 2005-12-11 22:57:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册会员 微信登录

x
想到一个思路:

想找到保存到eep里的相关设置的值,可以:

1.先保存原始的eep

2.修改那个想找到的值,再正常关机,保存新的eep

3.对比两个eep,找到不同的处

4.如果有多个不同的地方,,重复到第1步,,直到找到..
发表于 2005-12-12 00:17:18 | 显示全部楼层
如果能够切换更好!
回复 支持 反对

使用道具 举报

发表于 2005-12-12 09:10:58 | 显示全部楼层
好思路.................
是,用flashcompare 一对比就出来了。
回复 支持 反对

使用道具 举报

发表于 2005-12-12 12:01:37 | 显示全部楼层
呵呵
记得以前我也这样找过
不过那时还没有flashcompare
只有用fc命令,对比出来的东西简直看到头昏都找不出来
现在好了
期待兄弟能找出来
回复 支持 反对

使用道具 举报

发表于 2005-12-12 12:26:17 | 显示全部楼层
因为时间也存在EEP当中,不同时刻总是不同,不管怎么样比较都会比出不同来。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-12 12:33:11 | 显示全部楼层
原帖由 年华虚度 于 2005-12-12 12:26 发表
因为时间也存在EEP当中,不同时刻总是不同,不管怎么样比较都会比出不同来。

多比几次不就行了,,??把1改成0,再把0改成1,,时间不会这么变吧?在说时间在eep里???
回复 支持 反对

使用道具 举报

发表于 2005-12-12 15:07:50 | 显示全部楼层
试了几次,水平有限,看的头晕。
回复 支持 反对

使用道具 举报

发表于 2005-12-13 11:23:59 | 显示全部楼层

我自己都忘了,记得以前研究的时候发现eep保存的可能只是音量的级别,而不是参数,
B500014EC                   sub_B514EC                             ; CODE XREF CC000B598P
B500014EC                                                           ; CF0007D9CJ ...
B500014EC F0 1C                   mov r1, r12
B500014EE 49 24                   cmpb rl1, #4             ;rl1音量值,音量只有4格,如大于4就不处理,=byte_3E8A4的bit2

B500014F0 ED 0D                   jmpr cc_UGT, loc_B5150C   
B500014F2 88 10                   mov [-r0], r1            
B500014F4 E6 FC D0 34             mov r12, #34D0h           ;
B500014F8 E6 FD 0E 00             mov r13, #0Eh             ;
B500014FC E6 FE 16 00             mov r14, #16h             ;
B50001500 98 10                   mov r1, [r0+]
B50001502 C0 2F                   movbz r15, rl1            ;           
B50001504 DA B4 4C 72             calls 0B4h, pSendMessage
B50001508 E0 14                   mov r4, #1
B5000150A DB 00                   rets

所以估计的话,eep 只是保存了byte_3E8A4的值,然后启动时候映射到ram,根据这个值在psendmessage函数里读取音量参数。不过不明白的是,音量参数为何要写在eep里…………

[ 本帖最后由 JunFeng 于 2005-12-13 11:25 编辑 ]
回复 支持 反对

使用道具 举报

发表于 2005-12-13 11:26:25 | 显示全部楼层
所以音量的参数,可能是不不会因为开关机而变化的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-13 12:11:00 | 显示全部楼层
原帖由 JunFeng 于 2005-12-13 11:26 发表
所以音量的参数,可能是不不会因为开关机而变化的


那保存到哪里了??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-13 12:13:13 | 显示全部楼层
根据音量的档次去fullflash里找具体的参数???
回复 支持 反对

使用道具 举报

发表于 2005-12-13 14:54:04 | 显示全部楼层
原帖由 JunFeng 于 2005-12-13 11:23 发表

我自己都忘了,记得以前研究的时候发现eep保存的可能只是音量的级别,而不是参数,
B500014…………;rl1音量值,音量只有4格,如大于4就不处理,=..


这样,能否修改音量的级别,扩大其级别?
回复 支持 反对

使用道具 举报

发表于 2005-12-14 21:24:54 | 显示全部楼层

回复 #12 Xinshou 的帖子

程序中间有保护
而且现在音量已经调大了,没必要
可惜trustkill没公布如何找到的,也不知道他是否知道psendmessage函数到底怎样运行的,消息处理函数在小8里算是核心了
回复 支持 反对

使用道具 举报

发表于 2005-12-14 21:27:54 | 显示全部楼层

回复 #10 caiheng 的帖子


我说的是音量参数,而不是当前音量值//
回复 支持 反对

使用道具 举报

发表于 2005-12-14 21:32:57 | 显示全部楼层
而且现在修改的,估计就是音量参数了
在flash中可能不会有了
个人意见
回复 支持 反对

使用道具 举报

发表于 2005-12-15 09:30:07 | 显示全部楼层
原帖由 JunFeng 于 2005-12-14 21:24 发表
程序中间有保护
而且现在音量已经调大了,没必要
可惜trustkill没公布如何找到的,也不知道他是否知道psendmessage函数到底怎样运行的,消息处理函数在小8里算是核心了


用Smelter查一下,知道了,原来音效信息全都存在eeprom的区块69 (block 69)Acoustic Parameters。很明显,俄国老是从eep里看到区块69 的“音效参数”提醒找到的。
其实,这个音量参数格式与mp3音量格式类似,我们早已有mp3音量补丁了,本应该顺着思路去找出喇叭音量参数来才对。这个发现本应该属于中国人才对!因为直到昨天我的通知下,鬼老才知道怎么改mp3音量。
也许我要把你楼上的psendmessage函数的相关资料通知他们,看他们有什么新发明。

根据音量参数的这个格式/规律,我们或许可发现更多调整声音的方法:

区块69 的“音效参数”里还有如下数据,请测试:
比如  0x5FCA9E: 0E0E0E0E0E0E0E0E0E0E 这个有能力的可试改一改,看什么音量变了?
以及
0x5FCC4E: 0E0E0E0E0E0E0E0E0E0E 这个有能力的也可试改一改,看什么音量变了?


下面的区块不知什么用处:
区块140: Ringer /Key click settings 铃声/按键声设置
区块141: sound chip settings 声音芯片设置
回复 支持 反对

使用道具 举报

发表于 2005-12-15 09:35:20 | 显示全部楼层
原帖由 caiheng 于 2005-12-11 22:57 发表
想到一个思路:

想找到保存到eep里的相关设置的值,可以:

1.先保存原始的eep

2.修改那个想找到的值,再正常关机,保存新的eep

3.对比两个eep,找到不同的处

4.如果有多个不同的地方,,重复到第1步,,直到 ...


这个怎么感觉象我们当初改游戏啊。。。把一个数值增大,减小,然后查地址...-_-UU
回复 支持 反对

使用道具 举报

发表于 2005-12-15 09:45:44 | 显示全部楼层
区块140: Ringer /Key click settings 铃声/按键声设置:

EEPROM 数据如下:

;File block140.txt (pos=0x0,sz=0xF0,rd=0xF0) buffered
;Disassembly: offset=0x0, size=0xF0, baseAddr=0x000000

000000: 02 00 0D 00 :         add        DPP0, 0Dh
000004: A0 0F       :         cmpd1        r15, #0
000006: 06 0C 1D 41 :         add        ADDRSEL1, #411Dh
00000A: 80 0C       :         cmpi1        r12, #0
00000C: 05 09 19 4D :         addb        4D19h, SP
000010: B8 0B       :         mov        [r11], r0
000012: 03 06 10 46 :         addb        mem_FE0C, 4610h
000016: 54 0B 03 06 :         xor        603h, STKUN
00001A: 0D 3C       :         jmpr        cc_UC, loc_000094
;------------------------------------------------------------
00001C: 28 0A       :         sub        r0, [r2]
00001E: 03 06 10 32 :         addb        mem_FE0C, 3210h
000022: 34 08 05 0C :         subc        0C05h, mem_FE10
000026: 26 2B 46 05 :         sub        T1REL, #546h
00002A: 04 0A 19 32 :         add        3219h, STKOV
00002E: 06 04 04 0D :         add        CSP, #0D04h
000032: 25 3C EE 02 :         subb        2EEh, CC28
000036: 05 0C 1E 35 :         addb        351Eh, ADDRSEL1
00003A: 76 02 06 0F :         or        DPP2, #0F06h
00003E: 2D 32       :         jmpr        cc_Z, loc_0000A4
000040: 90 01       :         cmpi2        r1, #0
000042: 06 10 28 39 :         add        mem_FE20, #3928h
000046: C8 00       :         mov        [r0], [r0]
000048: 07 14 37 37 :         addb        mem_FE28, #37h
00004C: 64 00 0B 1C :         and        1C0Bh, DPP0
000050: 35 35 00 00 :         subcb        0, CC21
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-15 12:50:01 | 显示全部楼层
有戏,,,,,,,,,,,,,
回复 支持 反对

使用道具 举报

发表于 2005-12-15 14:48:19 | 显示全部楼层
来电的铃声能是vmo就好了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员 微信登录

本版积分规则

小黑屋|Archiver|手机版|爱技术 ( 沪ICP备08115260号-3 )

GMT+8, 2025-7-19 23:34

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表