##// END OF EJS Templates
Removed error on fat32 library, seems now to be able navigate among sectors in...
Removed error on fat32 library, seems now to be able navigate among sectors in both directions. Improved SDLCD drawing performances by almost 1000x.

File last commit:

r68:104125d87b89 dev_alexis
r68:104125d87b89 dev_alexis
Show More
fakesdcard.c
116 lines | 2.3 KiB | text/x-c | CLexer
Added Simulator target to run code on x86 and debug functions....
r63 #include <stdio.h>
#include <sdcard.h>
#include <sdcard-spi.h>
Removed error on fat32 library, seems now to be able navigate among sectors in...
r68 FILE* sdcardimg=NULL;
Added Simulator target to run code on x86 and debug functions....
r63
void sdcardmake(sdcardDev* sdcard,UHANDLE phy,void (*rcvr_mmc) (UHANDLE,char *,unsigned int ),void (*xmit_mmc) (UHANDLE,const char *,unsigned int ),void (*setspeed) (UHANDLE phy,unsigned int speed),unsigned int (*getspeed) (UHANDLE phy))
{
}
int sdcardselect (blkdevice* _this)
{
return 1;
}
void sdcarddeselect (blkdevice* _this)
{
}
int sdcardwait_ready (sdcardDev* sdcard)
{
return 1;
}
void sdcardpower (blkdevice* _this)
{
}
char sdcarddetect (blkdevice* _this)
{
return 1;
}
char sdcardwriteprotected (blkdevice* _this)
{
return 0;
}
int sdcardxmit_datablock (sdcardDev* sdcard,const char *buff,char token)
{
return 1;
}
int sdcardrcvr_datablock (sdcardDev* sdcard,char *buff,unsigned int btr)
{
return 1;
}
char sdcardsend_cmd (blkdevice* _this,char cmd,unsigned int arg)
{
return 1;
}
DSTATUS sdcarddisk_status (blkdevice* _this)
{}
DSTATUS sdcarddisk_initialize (blkdevice* _this)
{}
DRESULT sdcarddisk_read (blkdevice* _this,char *buff,unsigned long sector,char count)
{
Removed error on fat32 library, seems now to be able navigate among sectors in...
r68 if(sdcardimg==NULL)return RES_ERROR;
Added Simulator target to run code on x86 and debug functions....
r63 int res = fseek(sdcardimg, sector*(unsigned long)512, SEEK_SET);
if(count*512== fread(buff,1,count*512,sdcardimg))
return RES_OK;
return RES_ERROR;
}
DRESULT sdcarddisk_write (blkdevice* _this,const char *buff,unsigned long sector,char count)
{
Removed error on fat32 library, seems now to be able navigate among sectors in...
r68 if(sdcardimg==NULL)return RES_ERROR;
Added Simulator target to run code on x86 and debug functions....
r63 fseek(sdcardimg, sector*(unsigned long)512, SEEK_SET);
fwrite(buff,1,count*512,sdcardimg);
return RES_OK;
}
DRESULT sdcarddisk_ioctl (blkdevice* _this,char ctrl,void *buff)
{}
void sdcardspimakeblkdev(blkdevice* dev,sdcardDev* sdcard, blkdevselect_t select,blkdevpower_t power,blkdevdetect_t detect,blkdevwriteprotected_t writeprotected)
{
Removed error on fat32 library, seems now to be able navigate among sectors in...
r68 sdcardimg=fopen("/dev/sdc","rb");
Added Simulator target to run code on x86 and debug functions....
r63 // sdcardimg=fopen("usbkey.bin","rb");
if(sdcardimg!=NULL)printf("ok sdcard openned\n");
else printf("Nok sdcard not openned\n");
dev->phy=NULL;
dev->select= (blkdevselect_t)select;
dev->power = (blkdevpower_t)power;
dev->detect = (blkdevdetect_t)detect;
dev->writeprotected = (blkdevwriteprotected_t)writeprotected;
dev->write = sdcarddisk_write;
dev->read = sdcarddisk_read;
dev->ioctl = sdcarddisk_ioctl;
dev->initialize = sdcarddisk_initialize;
dev->status = sdcarddisk_status;
}