📄 vm_w_exp.c
字号:
/*
********************************************************************************
* ACTOS
* (( ))
*
* (c) Copyright 2002-2003, Actions Co,Ld.
* All Right Reserved
*
* File : vm_w_exp.msa
* By : Gongee
* Version: 1> v1.00 first version date
********************************************************************************
* $Id: vm_w_exp.c,v 1.1.1.1 2006/01/11 08:07:22 rowena Exp $
********************************************************************************
*/
#include "vm_nanf.h"
#pragma memory=dataseg(BAD_W_EXP)
UD_RW udrwexp;
char tempexp0,tempexp1;
#pragma memory=default
#pragma codeseg(BAC_W_EXP)
bool VMExpWrite(void *pbuf, unsigned long address, unsigned int len, char page) //该函数默认已安装慢速驱动,address单位为Bytes,len单位为扇区
{
int count;
unsigned int oldstgdrv;
unsigned long temp;
if(address >= VM_CAP) //判断是否越界
{
return FALSE;
}
//为了使Vram驱动不调用C库而作修改 05-6-12 15:24
// udrwexp.lba = address >> 9;
temp = address >> 1;
udrwexp.lba = temp >> 8;
//为了使Vram驱动不调用C库而作修改 05-6-12 15:24
udrwexp.sramaddr = pbuf;
// if((unsigned int)pbuf < 0x4000)
// {
// udrwexp.srampage = 8;
// }
// else
// {
// udrwexp.srampage = input8(0x05) & 0x0f;
// }
udrwexp.srampage = page & 0x0f;
for ( count = 0; count < len; count++ )
{
UD_SectorWrite(&udrwexp);
udrwexp.lba ++;
( (BYTE *)udrwexp.sramaddr ) += 0x200;
}
// UD_Update(); //05-8-31 11:02 提高速度
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -