标题:
机动战士高达:基连的野望压缩解析
[打印本页]
作者:
yzb
时间:
2020-5-29 13:53
标题:
机动战士高达:基连的野望压缩解析
最近有人找人解析这个游戏的压缩方法,本着学习的精神就看了一下,但是不知道是psp 哪个版的,只知道文件头是sd0开头的压缩数据,这几天解析了一下原游戏解压的源码,发个上来记录一下,做个备份吧(ps系的汇编看着真头大)
[attach]1462[/attach]
文件头
4字节 sd0标识符
4字节 文件压缩大小(包括前面文件头)
4字节 文件解压大小
第0xc字节开始为压缩数据
lzss类型
一个字节flags标识符,从最低位开始判断
flags&1==0则直接从压缩数据输出一个字节到解压地址
flags&1==1,先读2个字节 byte1 byte2,然后判断,出现以下3个分支
1 如果byte1&f == 1 ,则直接写入n个字节的byte2到解压地址, n = (byte1>>4)+3
2 如果byte1&f == 2 ,则直接从压缩数据输出n个字节到解压地址,n = (byte1>>4)+(byte2<<4)+0x12
3 从地址M,读入n个字节到解压地址
------- m = 当前解压地址-(byte1>>4)-(byte2<<4)
------- n = byte1 & f(如果n==0,则读入第3个字节byte3,n = byte3 + 0x10)
顺便说下这个游戏有ss版的,ss版的bit判断是双字节的,不过其他也大同小异,都是lzss类型的压缩,在这里就不贴了
欢迎光临 意志之路汉化组 (http://www.yzzl.kxb4u.com/)
Powered by Discuz! 7.2