在扩展bios运行的过程中,是否可以任意修改flash中的值

不行啊: 你说的是这一步:D:\TASM\BIN\TASM32 %1.ASM/l 而我需要解决的是这一步:D:\TASM\BIN\BRM20MK %1.EXE 也就是在最后形成的BIN文件中,我希望能够精确的定位到我的一个代码位置,如: mov cx,baseline的位置


没有人回答这个问题啊?


用批处理工具BRM,直接一步就可以生成BIN文件了。


楼上的,你和我的题目要解决的问题不一样啊,我是要解决“在扩展bios运行的过程中,是否可以任意修改flash中的值啊”,你那就是一个静态的方法啊。


看来是没有办法了,我只有把这个功能给去掉了。


可以实现随时擦写,无论BIOS或者DOS,修改长度不限,无论数据(password and etc.)或者程序代码(bios code)

在解压缩前使用以下4个API: EXTRN _CH364X_FLASH_READ :NEAR ; 解压缩之前,从Flash-ROM存储器读取数据块 ; 入口: EBX 起始地址, SI 字节数(0代表10000H), ES:DI 缓冲区 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364X_FLASH_LOCK :NEAR ; 解压缩之前,对Flash-ROM存储器进行写保护设定 ; 入口: BL 为00H则解除写保护,为8CH则允许写保护/只读锁定,为0FFH则读写保护/完全锁定,只在复位后才能解锁 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364X_FLASH_ERASE :NEAR ; 解压缩之前,对Flash-ROM存储器的指定区域进行擦除 ; 入口: EBX 起始地址, SI 字节数(0代表10000H) ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364X_FLASH_WRITE :NEAR ; 解压缩之前,向Flash-ROM存储器写入数据块 ; 入口: EBX 起始地址, SI 字节数(0代表10000H), ES:DI 缓冲区 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定)

在解压缩后使用以下4个API EXTRN _CH364_FLASH_READ :NEAR ; 从Flash-ROM存储器读取数据块 ; 入口: EBX 起始地址, SI 字节数(0代表10000H), ES:DI 缓冲区 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364_FLASH_LOCK :NEAR ; 对Flash-ROM存储器进行写保护设定 ; 入口: BL 为00H则解除写保护,为8CH则允许写保护/只读锁定,为0FFH则读写保护/完全锁定,只在复位后才能解锁 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364_FLASH_ERASE :NEAR ; 对Flash-ROM存储器的指定区域进行擦除 ; 入口: EBX 起始地址, SI 字节数(0代表10000H) ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定) ; EXTRN _CH364_FLASH_WRITE :NEAR ; 向Flash-ROM存储器写入数据块 ; 入口: EBX 起始地址, SI 字节数(0代表10000H), ES:DI 缓冲区 ; 出口: Z 成功, NZ 失败(存储器可能被完全锁定)


只有登录才能回复,可以选择微信账号登录