全能模拟器的金手指转换,8字转成20行!心累!求大佬赐教!

三级用户 liangx1 2021-5-31 7842

RT

日站有GB恶魔城金手指:

010F2CC0無敵常に十字架効果

 地址:C02C,数值:0F,字节:1(0~FF)

转换成RETROARCH的勾金手指,变成:

cheat0_address = "44( “C02C”在RA里就是“2C”)"

cheat0_address_bit_position = "255"

cheat0_big_endian = "false(金手指关闭状态,可以模拟器里打开)"

cheat0_cheat_type = "1"

cheat0_code = ""

cheat0_desc = "无敌(文本文档另存为UTF-8编码可以显示中文)"

cheat0_enable = "true"

cheat0_handler = "1"

cheat0_memory_search_size = "3(1字节是“3”,2字节是“4”,4字节是“5”)"

cheat0_repeat_add_to_address = "1"

cheat0_repeat_add_to_value = "0"

cheat0_repeat_count = "1"

cheat0_rumble_port = "0"

cheat0_rumble_primary_duration = "0"

cheat0_rumble_primary_strength = "0"

cheat0_rumble_secondary_duration = "0"

cheat0_rumble_secondary_strength = "0"

cheat0_rumble_type = "0"

cheat0_rumble_value = "0"

cheat0_value = "15(需要改的数值)"

cheats = "1(总共有多少条金手指)"

除了标注的几行,其他行的内容完全看不懂

PS:地址和数值都要填10进制数,老是要用WIN自带计算器来转换,好烦!


目前正在做一些自己收藏的ROM的金手指,转了一些FC和GB/GBC的游戏,后面还有其他机种的,请问大佬们,有没有RA的金手指生成器,将RAW代码填进去就自己生成文本的那种?


上一篇:5月30号真是个好日子,不但se自宫了d加密,如龙7学习版也来啦
下一篇:2021年5月31日签到帖
最新回复 (10)
  • 五级用户 kongmao45678 2021-5-31
    0 2
    没这么复杂,我前几天看了些fc的金手指,和EC码类似,可以用EC码转换。可以用exl做个简单的转换工具。这东西没现成的,要自己做
  • 三级用户 liangx1 2021-5-31
    1 3
    FC的EC码地址可以直接用,GB的码也可以转,但没有日站的金手指的地址那么好转换,exl的转换工具不会做,是要写公式吗?

    发现,还有一些游戏的金手指地址超出可修改的范围,比如FC在RA里的金手指地址只能搜索到7FFF,FC第2次机战、天使之翼2、炎之斗球儿弹平2的大部分数据地址都超出这个范围,很崩溃......
  • 二级用户 khan 2022-12-2
    0 4

    忽略此楼, 看下楼, 希望对您有帮助
    原文地址: https://githubmemory.com/repo/flyinghead/flycast/issues/279

  • 二级用户 khan 2022-12-2
    1 5


    Here is some information about the .cht file format:

    cheat0_address = "122176"        Address in RAM (decimal)
    cheat0_address_bit_position = "0"  Ignored
    cheat0_big_endian = "false"        Fixed to false
    cheat0_cheat_type = "1"            Fixed to 1
    cheat0_code = ""                   Ignored
    cheat0_desc = "Description of the cheat"
    cheat0_enable = "false"            Set to true to enable the cheat by default, or false to manually enable the cheat in the UI
    cheat0_handler = "1"               Fixed to 1
    cheat0_memory_search_size = "4"    Size of the memory access: 3 for 8 bits, 4 for 16 bits, 5 for 32 bits
    cheat0_rumble_port = "0"           Ignored
    cheat0_rumble_primary_duration = "0" Ignored
    cheat0_rumble_primary_strength = "0" Ignored
    cheat0_rumble_secondary_duration = "0" Ignored
    cheat0_rumble_secondary_strength = "0" Ignored
    cheat0_rumble_type = "0"           Ignored
    cheat0_rumble_value = "0"          Ignored
    cheat0_value = "9"                 Value to set at the given address
    cheat0_repeat_count = "1"          How many memory accesses
    cheat0_repeat_add_to_value = "0"   Delta to add to value between each access
    cheat0_repeat_add_to_address = "0" Delta to add to address between each access

    Say you have a typical GameShark code such as 00123456 00000080. This code says "set 8-bit value 80h at address 123456h". This would be converted to:

    cheat0_address = "1193046"
    cheat0_big_endian = "false"
    cheat0_cheat_type = "1"
    cheat0_desc = "Infinite Life or whatever"
    cheat0_enable = "false"
    cheat0_handler = "1"
    cheat0_memory_search_size = "3"
    cheat0_value = "128"
    cheat0_repeat_count = "1"
    cheat0_repeat_add_to_value = "0"
    cheat0_repeat_add_to_address = "0"


  • 二级用户 khan 2022-12-2
    0 6

    永恒的阿卡迪亚金手指

    //X-Terminator 码 (原始码)
    [金钱]
    0256FA20  05F5E0FF
    
    [船移动时显示坐标 (比较影响美观)]
    00566E9D 00000040
    
    [不遇敌]
    00566E9C 000000FF
    
    [全发现物取得]
    02566EA4 FFFFFFFF
    02566EA8 FFFFFFFF


    尝试手工转了max money 和全物品发现 部分

    //总共有多少条金手指
    cheats = "2"
    
    // 地址, 必须是十进制; 0256FA20去掉02 
    cheat0_address = "5700128"
    cheat0_address_bit_position = "0"
    cheat0_big_endian = "false"
    cheat0_cheat_type = "1"
    cheat0_code = ""
    
    // 描述; UTF-8编码可以显示中文
    cheat0_desc = "Infinite Money"
    
    // 默认是否生效
    cheat0_enable = "false"
    cheat0_handler = "1"
    
    // 1字节是"3", 2字节是"4", 4字节是"5"
    cheat0_memory_search_size = "5"
    
    // 震动相关, 可以通过地址, 给本来不支持震动的游戏添加震动功能
    cheat0_rumble_port = "0"
    cheat0_rumble_primary_duration = "0"
    cheat0_rumble_primary_strength = "0"
    cheat0_rumble_secondary_duration = "0"
    cheat0_rumble_secondary_strength = "0"
    cheat0_rumble_type = "0"
    cheat0_rumble_value = "0"
    
    // 金手指的值, 10进制; 0x55D4A7F
    cheat0_value = "89999999"
    
    // 内存访问次数
    cheat0_repeat_count = "1"
    
    // 在每次访问之间增加值的增
    cheat0_repeat_add_to_value = "0"
    
    // 增量添加到每次访问之间的地址
    cheat0_repeat_add_to_address = "0"


    cheat1_address = "5664420"
    cheat1_address_bit_position = "0"
    cheat1_big_endian = "false"
    cheat1_cheat_type = "1"
    cheat1_code = ""
    cheat1_desc = "Find all things 发现全物品"
    cheat1_enable = "false"
    cheat1_handler = "1"
    cheat1_memory_search_size = "5"
    cheat1_rumble_port = "0"
    cheat1_rumble_primary_duration = "0"
    cheat1_rumble_primary_strength = "0"
    cheat1_rumble_secondary_duration = "0"
    cheat1_rumble_secondary_strength = "0"
    cheat1_rumble_type = "0"
    cheat1_rumble_value = "0"
    cheat1_value = "4294967295" // 0xFFFFFF
    cheat1_repeat_count = "2"  //访问两次, 此处相当于向0x00566EA4 0x00566EA8依次写入0xFFFFFFFF值
    cheat1_repeat_add_to_value = "0"
    cheat1_repeat_add_to_address = "4" //每次步进4字节


  • 二级用户 khan 2022-12-2
    0 7


    金手指码类型说明 

    1. 00xxxxxx 000000yy // 将8bit的值yy写入内存地址8Cxxxxxx,  值锁定

    2. 01xxxxxx 0000yyyy // 将16bit的值yyyy写入内存地址8Cxxxxxx, 值锁定

    3. 02xxxxxx yyyyyyyy // 将32bit的值写入内存地址8Cxxxxxx, 值锁定

    4. 03 码比较复杂, 单独列出

        4.1 . 0300nnnn aaaaaaaa // 批量写入, nn表示接下来写入几组32bit值, aaaaaaaa是写入的地址, aaaa下面的几行数据表明写入的值


            例如: 

                03000004 8C012000

                11111111 22222222

                33333333 44444444

                这几行的效果相当于给 0x8C012000 ~ 0x8C012000C 的地址依次写入了 11111111 22222222 33333333 44444444的值


        4.2 030100yy aaaaaaaa // 增加码. 把8bit的值yy, 增加到地址aaaaaaaa上

        4.3 030200yy aaaaaaaa // 减少码. 从地址aaaaaaaa减去8bit的值yy

        4.4 0303yyyy aaaaaaaa // 增加码. 把16bit的值yyyy, 增加到地址aaaaaaaa上

        4.5 0304yyyy aaaaaaaa // 减少码. 从地址aaaaaaaa减去16bit的值yyyy

        4.6 03050000 aaaaaaaa yyyyyyyy // 增加码. 把32bit的值yyyyyyyy, 增加到地址aaaaaaaa上

        4.7 03060000 aaaaaaaa yyyyyyyy // 减少码. 从地址aaaaaaaa减去32bit的值yyyyyyyy


    5. 04xxxxxx  rrrrssss yyyyyyyy  // 重复填充码. 把32bit的值yyyyyyyy写入到地址8Cxxxxxx, 重复写入rrrr次, 每次写入的地址跳跃ssss(ssss*4, 因为是32bit码)

        例如:

            04007a30 00000001 12345678 

            相当于地址0x8C007A30 ~ 0x8C007A38 都被写入了 12345678的值


    6. 05xxxxxx aaaaaaaa nnnnnnnn // 复制码. 从0x8Cxxxxxx地址复制nnnnnnnn个字节 到 0xaaaaaaaa地址

    7. 071000xx // 改变解码方式

    8. 0b0xxxxx // 延迟xxxx个循环后写入码. 默认是1000(0x03e7)个循环

    9. 0cxxxxxx yyyyyyyy // 条件码. 如果0x8Cxxxxxx的值等于yyyyyyyy, 则执行所有的金手指码, 否则不执行. 某些需要载入后再修改的游戏有用

    10. 0d 分支条件码

        10.1 0dxxxxxx 0000yyyy //  如果0x8Cxxxxxx的值等于yyyy, 则执行下一行金手指码, 只能和00, 01, 02型码配合使用

        10.2. 0dxxxxxx 0001yyyy // 如果0x8Cxxxxxx的值不等于yyyy, 则执行下一行金手指码, 只能和00, 01, 02型码配合使用

        10.3. 0dxxxxxx 0002yyyy // 如果0x8Cxxxxxx的小于yyyy, 则执行下一行金手指码, 只能和00, 01, 02型码配合使用

        10.4. 0dxxxxxx 0003yyyy // 如果0x8Cxxxxxx的大于yyyy, 则执行下一行金手指码, 只能和00, 01, 02型码配合使用


    11. 0e 批量分支条件码

        11.1 0ennyyyy 00aaaaaa // 如果0x8Caaaaaa地址的值等于yyyy, 则执行下面nn行密码

            例如: 

                0e04abcd 00012000

                02300040

                FFFFFFFF

                02300050

                EEEEEEEE

                如果地址0x8C012000 的值 == 0xabcd, 则执行接下来的4行密码, 效果相当于两行"02xxxxxx"码 "02300040 FFFFFFFF" 和 "02300050 EEEEEEEE"

        11.2 0ennyyyy 01aaaaaa //如果0x8Caaaaaa的值不等于 yyyy, 则执行下面nn行代码

        11.3 0ennyyyy 02aaaaaa //如果0x8Caaaaaa的值小于 yyyy, 则执行下面nn行代码

        11.4 0ennyyyy 03aaaaaa //如果0x8Caaaaaa的值大于 yyyy, 则执行下面nn行代码


    12. 0fxxxxxx 0000yyyy // 激活码 向0x8Cxxxxxx地址立即写入一次yyyy



  • 三级用户 rickytt82 2022-12-2
    0 8
    干嘛要转 3ds上的的万能模拟器直接能输入010F2CC0 然后保存就是这个一长串的格式了 自动的
  • 三级用户 rickytt82 2022-12-2
    0 9
    khan 忽略此楼, 看下楼, 希望对您有帮助原文地址: https://githubmemory.com/repo/flyinghead/flycast/issues/279
    我靠 去年的坟挖了干嘛
  • 二级用户 khan 2022-12-2
    0 10
    rickytt82 干嘛要转 3ds上的的万能模拟器直接能输入010F2CC0 然后保存就是这个一长串的格式了 自动的

    开发用途, 刚刚好在研究, 自己记录一下,  retroArch 稳定性一般, 我都是用独立模拟器, 不支持cht外的格式

  • 二级用户 liukun966123 2022-12-16
    0 11
    刚刚好需要....
    • 老男人游戏网配套论坛
      12
        立即登录 立即注册
发新帖
本论坛禁止发布SWITCH和PS4相关资源,若有其他侵权内容,请致邮3360342659#qq.com(#替换成@)删除。