mGBA安卓版开发进度更新(已发布测试版,本贴停更) 心得研究

五级用户 huhao1987 11月前 8472

已发布测试版,以后会在那贴更新

https://bbs.oldmanemu.net/thread-36710.htm




开这个帖子主要是跟进开发进度,目前还是开发初期,大多数功能都没有,大家可以提些建议,我会考虑加进去,另一个主要的原因也是希望自己别最后又弃坑了。

目前由于开发初期,暂未开源,基本完善后会考虑开源

目前已有功能:

游戏画面:修改原项目SDL端口,GBA正常显示,目前仅竖屏半屏,横屏全屏,无法自定义。GB游戏部分正常,只能显示在屏幕一部分,画面无法拉伸。之后可能考虑安卓原生OpenGL或者vulkan重新开发(还在学习,随时弃坑)


游戏音乐:同样是修改了项目SDL端口,正常播放。可能会重写,但是还没计划


游戏控制:修改原项目SDL端口,目前只做了非常简单的屏幕按键,正常使用。之后应该会加入手柄支持,目前还没研究这一块


金手指:原项目支持,安卓版已完成大部分功能,已开发一个简易安卓选择/编辑界面,已内置全套EC金手指代码,短期内不会再加入太多功能


补丁:原项目支持,但未开发安卓对应功能,理论上能用,但是未测试


快进:原项目支持,但未开发安卓对应功能


快速保存/快速读取:原项目支持,简单完成


模拟器设置:未开发


游戏列表:已正常显示游戏列表, 5月11日修改并加入全GBA和GB游戏名称数据库,GBA游戏列表已能正常显示对应中文名(整合自GitHub上某项目对应游戏内码和主站游戏索引,感谢老男人提供的完整游戏列表)GB游戏则只能显示英文名称(因为找不到中文对应列表)


进度

5月12日:目前考虑两套金手指方案共存,支持EC金手指和mGBA自带的金手指格式。

1. 使用EC的理由是几乎所有gba游戏都有,我在论坛里就找到了一个大合集,抛开可能有的金手指可改内容很少,最少是每个游戏都有的。所以目前这套方案就是内置EC金手指。

2. mGBA本身是支持好几种常见的金手指格式的,比如codebreaker,Game shark,还有vba,这几个都是挺流行的金手指格式,我不会去改动它们,但是会允许玩家自定义,比如可以自动查找和游戏同目录下的金手指文件(官方默认功能),然后和EC的金手指同时显示在金手指选项内,这样玩家可以自己增加新的金手指,也同时可以使用自带的。

现在的进度是导入了全部EC代码文件,修改了游戏数据库,现在可以找出对应游戏的金手指,但是原项目并不支持EC码,所以后续要加不少东西

5月14日:今天基本上完成了EC代码读取部分,启动游戏时会自动读取自带EC金手指,并且转换成VBA格式,暂时未实现金手指注入

5月16日:

优化游戏列表


初步加入游戏封面显示(还在考虑是以什么形式显示),感谢站友love18oe允许我使用他做日版封面


修改了原版金手指读取的代码,现在内置金手指可以使用了,但是还没加入开启关闭功能,所有金手指都会启动


这里不得不吐槽下Google强制使用SAF框架来读取写入文件,效率极其低下。以后可能会考虑双版本,一个使用SAF框架,估计有一些文件列表的功能精简,发布到Google play

另一个会使用老的文件读取方式(无法上架Google play,但是效率高得多)这个版本会包含类似图片封面显示的功能


5月18日:

修复没有内置金手指游戏崩溃


修复某些不在官方游戏列表中的游戏无法显示的情况(已使用生化危机2demo测试)


修复最终幻想战略版EC金手指内错误,00写成了OO...


修复EC金手指代码格式错误导致的崩溃


加入金手指设置界面,可以选择开启内置金手指

我发现我ec码转VBA的算法有点问题,导致金手指异常,明天有时间的时候修复下


5月19日:

修复EC码转VBA算法,现在EC金手指能正常使用了。

加入一个简易的金手指编辑器,可以编辑内置金手指,也可以加入金手指


5月25日:

部分完成游戏内金手指启动/关闭和修改代码的功能。EC代码质量有些参差不齐,在考虑如何尽可能的兼容大多数格式不怎么标准的金手指

这周比较忙,所以没写太多。


5月26日:

继续更新,运行游戏时可以开启/关闭并且修改金手指,关闭金手指界面后会立即生效。

加入游戏rom下同名金手指文件支持,目前会优先读取同名金手指。

优化游戏列表,稍微能见人了点


5月30日:

这几天都很忙,没时间摸鱼,更新下

继续优化金手指支持,mGBA默认VBA代码只支持8位,如果不到就会直接认为代码有误而掠过,这也变相造成了很多EC金手指会有问题(EC金手指的作者每个人风格都不同)我修改了mGBA的代码,删掉了代码长度检查。所以现在可以正常支持2位,4位和8位了。

加入快速存档和快速读档。下一步应该是支持多个槽位的存档支持

等存档完成后比较大概率会研究下滤镜,我大概看了下mGBA关于滤镜的代码,应该是GLSL,但没研究过怎么调用。

5月31日:

优化快速存档和快速读档,无意间看到倒带功能貌似也是以来存档和读档来实现的,原理应该就是依照设定的时间来定时保存存档状态,需要读取的时候就调用上次保存的状态,我个人不算多喜欢这个功能,因为感觉会很浪费资源,暂时不考虑加入吧。

6月2日:

加入截图功能,虽然不知道有啥用(目前只支持Android 7以上系统)

另外想咨询下大家哪里有比较全的GBA和GBC/GB的封面,love18oe的只有日版GBA封面,现在还缺美版和GBC/GB的

6月6日:

优化游戏列表,从超级难看变成了没那么难看,没办法,做UI我一直很很差。考虑近期发布第一个初期测试版,功能不完整,只能说是勉强可以用,另外可能考虑建群,但不知道在哪个平台建,各位能否推荐下。

6月8日:

修复读取快速存档导致的屏幕冻结

修复游戏王7金手指错误。EC代码很多拼写错误,比如text,写成了test

简单添加offlinelist GBA封面支持,现在最少都能显示图片了

添加了GBA和GB无封面时的图片

等我再看看有没有什么大问题,没问题了可能下次就会发测试版,另外看到好几个人都推荐qq群,我好多年都没怎么用q了,大家还用吗



目前应该就这些,想起来和有新进展的时候再加。也欢迎大家提功能意见


上一篇:【改造备忘】给snk摇杆加锂电池的方式
下一篇:3DS金手指报错
最新回复 (60)
  • 三级用户 fruitBitch 11月前
    0 2
    看下mGBA的开源license哦~
  • 五级用户 huhao1987 11月前
    0 3
    fruitBitch 看下mGBA的开源license哦~
    会开的,目前太初期了,到时候把乱写的代码清理下再说
  • 四级用户 捡漏哥 11月前
    0 4
    加油!
  • 三级用户 PW 11月前
    0 5
    huhao1987 会开的,目前太初期了,到时候把乱写的代码清理下再说
    感谢楼主的辛苦付出。。。金手指功能非常好 像激烈模拟器那样搞一个库最好 目前安卓平台的几个gba模拟器金手指功能比较弱 还要转码
  • 四级用户 比利十三 11月前
    0 6
    PW 感谢楼主的辛苦付出。。。金手指功能非常好 像激烈模拟器那样搞一个库最好 目前安卓平台的几个gba模拟器金手指功能比较弱 还要转码
    玩的时间不多,喜欢自带HACK的,老金库能安排最好啦
  • 六级用户 进站劣人 11月前
    0 7
    太牛逼了。
  • 三级用户 wahere 11月前
    0 8

    不知道滤镜以及倒带功能是否有涵盖,另外有个小众建议评估下效能,便携设备续航还是蛮重要的。这样老手机可以翻出来再利用了。

  • 五级用户 huhao1987 11月前
    0 9
    wahere 不知道滤镜以及倒带功能是否有涵盖,另外有个小众建议评估下效能,便携设备续航还是蛮重要的。这样老手机可以翻出来再利用了。

    倒带功能原项目里带了,应该是可以支持的。滤镜应该也是有的,但是得研究下怎么实现。

    我没理解“评估下效能”是啥意思

  • 三级用户 wahere 11月前
    0 10
    huhao1987 wahere 不知道滤镜以及倒带功能是否有涵盖,另外有个小众建议评估下效能,便携设备续航还是蛮重要的。这样老手机可以翻出来再利用了。 倒带功能原项目里带了,应该 ...
    嗯,这个想法源自最新出的ROG掌机续航测评。主要的想法是在尽可能在低功耗的情况下保障体验,这样可以玩久点。但估计不太好实现。
  • 五级用户 huhao1987 11月前
    0 11
    wahere 嗯,这个想法源自最新出的ROG掌机续航测评。主要的想法是在尽可能在低功耗的情况下保障体验,这样可以玩久点。但估计不太好实现。
    这个和系统本身有关了,我这只是个模拟器而已
  • 三级用户 wahere 11月前
    0 12
    huhao1987 这个和系统本身有关了,我这只是个模拟器而已

    嗯,也不完全是。比如模拟psp,使用Retroarch的psp内核和直接使用ppsspp的耗电量是不同的。

    实现不了也不用太在意的。

  • 五级用户 huhao1987 11月前
    0 13
    少量金手指进度更新
  • 四级用户 c83186595 11月前
    0 14
    支持
  • 五级用户 mazz 11月前
    0 15
    膜拜大佬!??
  • 五级用户 huhu180 11月前
    0 16
    加油,大佬
  • 二级用户 aksunlight 11月前
    0 17
    支持支持
  • 五级用户 huhao1987 11月前
    0 18
    开发进度更新下
  • 二级用户 11月前
    0 19
    我在mgba老外群可能没咋注意安卓手机端的事,我很好奇,mgba电脑端哪个时候能实现无线适配器的互联(doge)
  • 四级用户 花无缺 11月前
    0 20
    可以正常模拟黄金太阳吗?
    • 老男人游戏网配套论坛
      62
        立即登录 立即注册
发新帖
本论坛禁止发布SWITCH和PS4相关资源,若有其他侵权内容,请致邮3360342659#qq.com(#替换成@)删除。