rem: s32 CARD_DeleteAsync(u32 chn,const char *filename,cardcallback callback)
add: s32 CARD_DeleteAsync(s32 chn,const char *filename,cardcallback callback)
context: s32 CARD_DeleteAsync(u32 chn,const char *filename,cardcallback callback){	s32 ret,fileno;	cardcallback cb = NULL;	card_block *card = NULL;	struct card_dir *dirblock = NULL;	struct card_direntry *entry = NULL;#ifdef _CARD_DEBUG	printf("CARD_DeleteAsync(%d,%s,%p)\n",chn,filename,callback);#endif	if((ret=__card_getcntrlblock(chn,&card))<0) return ret;	if((ret=__card_getfilenum(card,filename,&fileno))<0) {		__card_putcntrlblock(card,ret);		return ret;	}		dirblock = __card_getdirblock(card);	entry = &dirblock->entries[fileno];		card->curr_fileblock = entry->block;	memset(entry,-1,sizeof(struct card_direntry));		cb = callback;	if(!cb) cb = __card_defaultapicallback;	card->card_api_cb = cb;	if((ret=__card_updatedir(chn,__delete_callback))>=0) return ret;	__card_putcntrlblock(card,ret);	return ret;}