birbird 发表于 2008-3-22 21:10:26

ELFLoader工程中各个文件的作用?

这个工程下有这样一些源文件和我的理解:
additional.c            作用不明,在哪里被使用也不明
config_data.c         编写此程序所需的配置项
conf_loader.h         编写配置所需的头文件
elfloader.cpp          主程序,不明白的地方很多
ESI.asm                  作用不明,elfloader.cpp有对它的调用,
EXT2.asm               与文件扩展有关,elfloader.cpp有对它的调用,
FSWI.asm               与swilib有关,elfloader.cpp中有一句extern void *Library[]; 是调用的它?
IMB.asm               作用不明,elfloader.cpp有对它的调用,
png.c                      png图标相关,
rets_机型.asm      都是给elfloader.cpp调的,不知道在干嘛

高手们能不能给这个工程做个尽可能详细的解释,
有人能给源码加上注释就好了……
(*^__^*)

另外,RSEG,DCD是干嘛的

binghelingxi 发表于 2008-3-23 10:15:53

additional.c 一般为SGLOD机型用的一些扩充函数,如keyhook,fread32,fwrite32
elfloader.cpp中包含了elfloader加载入口,已及swilib.blib校对,注册elf文件关联,ESI拓展程序,还有SUBPROC等几个函数的主程序
ESI.asm 为esi拓展入口
EXT2.asm主要是NEWSGOLD系统的几个注册文件关联的入口
FSWI.asm 为swihook主程序,对系统的swi调用进行了拓展,使得ELF,MPV14的函数调用变得方便又简单
IMB.asm几个用汇编写的特殊函数,似乎用于ELF执行完毕时改变CPSR寄存器状态的
png.c中为几个png解析函数
rets_xxx.asm为ELFLOADER的各个HOOK的返回地址,以及StoreErrInfoAndAbort,StoreErrString两个功能函数
xxx.xcl为连接文件,主要为HOOK地址,以及主程序地址

RSEG 声明HOOK,入口
DCD 写入数据,dword类型格式
还有如DCB,就是byte类型格式

birbird 发表于 2008-3-23 13:57:40

原帖由 binghelingxi 于 2008-3-23 10:15 发表 http://mobile.0110.cn/images/common/back.gif
additional.c 一般为SGLOD机型用的一些扩充函数,如keyhook,fread32,fwrite32


是除了newsgold以外的,还是仅仅是sgold的?
additional.c里面开头是这样的
#ifndef NEWSGOLD

[ 本帖最后由 birbird 于 2008-3-23 14:05 编辑 ]

birbird 发表于 2008-3-23 14:03:33

additional.c中的函数 和 API中的 有什么分别呢,
我指性质上,他们功能是不同的,这是肯定的
或者说 为么什不把additional.c中的函数弄到API里去呢

binghelingxi 发表于 2008-3-23 14:04:13

原帖由 birbird 于 2008-3-23 13:57 发表 http://mobile.0110.cn/images/common/back.gif


是sgold还是newsgold?
additional.c里面开头是这样的
#ifndef NEWSGOLD
注意是#ifndef
不是#ifdef
条件编译用。

binghelingxi 发表于 2008-3-23 14:07:04

原帖由 birbird 于 2008-3-23 14:03 发表 http://mobile.0110.cn/images/common/back.gif
additional.c中的函数 和 API中的 有什么分别呢,
我指性质上,他们功能是不同的,这是肯定的
或者说 为么什不把additional.c中的函数弄到API里去呢

性质上基本是一样的,不过api中的函数可以完全独立出来,但是additional.c还要返回或者调用一些不是公用的函数。

birbird 发表于 2008-3-23 14:07:09

你手太快了,我刚刚发现那个n,正在编辑帖子,你就回了……
-_-!

原帖由 binghelingxi 于 2008-3-23 14:04 发表 http://mobile.0110.cn/images/common/back.gif

注意是#ifndef
不是#ifdef
条件编译用。
页: [1]
查看完整版本: ELFLoader工程中各个文件的作用?