神奇误差 Intermediate

  • Male
  • from 法国
  • Member since Sep 28th 2013
  • Last Activity:
Posts
350
Likes Received
13
Points
2,208
Profile Hits
69,676
  • 大大您好方便跟您索取铳钢战记汉化测试版V0.35吗谢谢q0989436809@gmail.com
  • 大佬您好,我前两年向您请教过GBC汉化日文单字节转中文双字节的问题,由于当时工作繁忙没能继续研究下去,现在重拾汉化,依然在编码方面遭遇了许多问题,所以还想请大佬不吝赐教~
    我汉化的这款GBC游戏叫怪兽赛跑,日文原版Rom和字码表我放在百度网盘里了:链接: pan.baidu.com/s/1OF-xI4ICDY518OeCv6ss_A 提取码: 2ryf
    该游戏原版字库的位置在00149390附近,游戏末尾有大量的空白,所以我想把新的汉字字库放在00180000的位置(也是从ROM60开始)
    我看了您前两年给我的指导,我的想法是保留一部分单字节编码(因为我翻译的比较简略、不打算修改文本指针,所以希望可以在个别空间很小的地方继续使用单字节编码汉字)
    双字节则是按照您的说法,用第一个字节指定ROM(例如ROM60-70为中文字库),第二个字节用于判断汉字的位置
    换句话说,程序先提取文字的编码,如果是60-70(例如6101)则进入双字节编码程序、继续提取下一个字节的编码、两个字节共同确定汉字位置;如果不是,则进入单字节编码程序,用当前的编码确定汉字位置
    有思路后,我按照您的教程,用BGB查找显示文字的代码,发现28A7和26F7这两个部分的代码和文字显示有关
    28A7可能用于获取文字的编码,并最终将编码保存在bc中,传输到26F7进行处理;26F7部分的代码则可能用于按照编码查找字库
    但是到这一步我就卡住了,不知道该怎么继续下去,尤其是不知道该怎么修改这两部分的代码,例如如何让指向原版字库的代码重新指向我扩充的新字库
    所以还望大佬能够帮我看看我对这个游戏的分析对不对,以及能教我一下如何阅读和编写相关的代码
    谢谢您~
  • 能否分享【开机菜单的反汇编追踪】还有【铳钢战记菜单汉化版】
  • 涂涂涂,路过
  • 老大好,N年不见,我是2013年在英文化GB游戏Wizardry时向你请教指针的Tangyi。在因为技术问题停滞了2年以后,请允许我向你请教一些SFC游戏英文化的事情儿,这里先冒昧地问下你是否对这个主机有所涉及?无论如何,首先提前感谢一下= =
    • 好久不见,SFC没什么经验。有时间可以把问题贴出来,万一被那个大佬路过看到了呢,不就有救了么
  • 老大,论坛是不是不能发ROM的,考虑到万一老任发飘了,
  • 我擦,我竟然被某游客举报了!!!

    好吧,回答该游客的问题:

    要生成GBC文件,你需要下载安装Cygwin cygwin.com/
    注意安装的时候记得勾选
    make
    git
    python
    gettext
    这四个程序选项。
    接着,下载rgbds github.com/rednex/rgbds/archive/master.zip
    解压缩后,把 rgbasm.exe, rgblink.exe 和rgbfix.exe这三个文件放到目录 C:\cygwin\usr\local\bin 下
    接着打开Cygwin终端窗口,键入
    git clone --recursive github.com/pret/pokeyellow
    cd pokeyellow
    然后再键入,
    make


    祝你好运
    • 如果是 Win10 ,建议使用WSL来编译(或者跟我来用Linux吧哈哈,我现在还得用自己附加代码的rgbdx编译汉化PM)
    • 什么!你竟然是从源代码汉化的,佩服佩服!!
    • pm黄我不是主破解,黄也是一般向破解,用源码汉化的是pm水晶。其实我觉得从头破解比用现成源码工程更难,更佩服你们…
  • 请问如何修改口袋妖怪黄,野生精灵的遇见个体值
  • 统钢战记不在更新了吗?想重温下!能把ROM发我吗?谢谢了m15089266336@163.com
  • 大神你好,我最近在尝试汉化一个GBC游戏,原始的是日文单字节的,我想要弄成中文双字节(都用8*8小字),现在已经会找文本并且能把日文游戏翻译成英文游戏了,但是不会写单字节改双字节这块儿,想问下这部分要从哪里入手学呢?~
    • 日文单字节: 获得当前文字A编码->切换到字模所在bank->根据文字编码计算偏移地址->在字模bank内根据偏移地址找到对应文字A的字模起始地址->将字模读入内存或显存中
      中文双字节:(a)一个bank最多储存1024个8x8中文字模,简单起见,不妨一个bank只储存256个中文字模。那么中文双字节的编码可以是【bank号】【偏移地址】。举例,ROM80~ROM90都用来储存中文字模,如编码8000代表该字模储存在ROM80:4000~ROM80:400F,如编码80FF代表该字模储存在ROM80:4FF0 ~ ROM80:4FFF, 再如编码8D01代表该字模储存在ROM8D:4010 ~ ROM8D:401F。
      (b)效仿日文单字节的程序流程,中文双字节的程序流程如下:获得当前汉字X的双字节编码->根据双字节编码的第一个字节切换到该文字字模所在的bank->根据双字节编码的第二个字节计算偏移地址->在字模bank内根据偏移地址找到对应汉字X的字模起始位置->将对应字模读入内存或显存中。
    • 也可一个bank存放1024个汉字字模,那么此时双字节编码的第一个字节不再是字模所在bank编号。如将第一个字节为80,81,82,83汉字编码的文字,总共1024个汉字放进ROM80里,将第一个字节为84,85,86,87汉字编码的文字,总共1024个汉字放进ROM81里,以此类推。

      中文双字节的程序流程如下:获得当前汉字X的双字节编码->根据双字节编码的第一个字节计算字模储存的具体bank编号->获得bank编号->切换到该文字字模所在的bank->根据双字节编码的第二个字节计算偏移地址->在字模bank内根据偏移地址找到对应汉字X的字模起始位置->将对应字模读入内存或显存中。
    • 谢谢大神,思路清楚了,想问下有汇编的详细教程吗?
      比如说如何获得双字节编码,如何判断第一个字节第二个字节、如何切换bank、如何计算偏移地址这些代码具体该怎么写呢?
    • 这两天稍忙,晚些回复。你现在已经找到游戏中日文字符的相关操作代码了吗? 如下流程:

      日文单字节: 获得当前文字A编码->切换到字模所在bank->根据文字编码计算偏移地址->在字模bank内根据偏移地址找到对应文字A的字模起始地址->将字模读入内存或显存中
  • 神奇大哥,刚刚看到铳钢关闭的通知,那之后的汉化啥时候出?可以的话能把现在的版本发我一下吗,谢谢大神 438182394@qq.com
  • 神奇大大~~小弟最近接觸到小時後未完成的回憶:gbc的銃鋼戰記!翻了好多資源,找到了“GBC铳钢战记深度研究资源集合”這個帖子,無奈已無法下載附件了⋯請問大大您方便再一次分享嗎?真的好想深入的玩上一遍,小弟在此先謝謝了~^_^
  • 神奇误差大神,我给你发了一个会话,可以请你帮忙看看,然后解答下吗?是关于GB扩容的一些问题
  • 有没有人在开始后,一轮对话后,应该是跳入选名字的画面,在那儿白屏?
  • 莫名其妙修复了一个白屏,怎么觉着那个白屏问题是dump游戏的人故意改的呢~
  • 前来参与测试!