main.pp

来自「基于dsp的软驱控制源程序」· PP 代码 · 共 104 行

PP
104
字号
#line 229 "f2407_c.h"
ioport unsigned int portFF0F;                           

ioport unsigned int portFFFF;                           


#line 3 "partion.h"
typedef struct 
{
   	char Head; 
   	char Sector; 
   	char Cylinder; 
}CHS;
typedef struct
{
  	int SectorBytes; 
  	char SectorsPerCluster; 
  	int ReservedSectors; 
  	char nbrFat; 
 	int RootEntry; 
  	int TotalSectors; 
  	char Media; 
  	int SectorsPerFAT; 
  	int SectorsPerTrack; 
  	int Heads; 
  	long hiddenSectors; 
  	long BigTotalSectors; 
 }BPB_FAT;
typedef struct
{
  	char FileName[8]; 
  	char ExtendName[3]; 
  	char FileAttribute; 
  	char Reserved[10]; 
  	int time; 
  	int date; 
  	int firstcluster; 
  	long filesize;    
}RootDirectory;
 
#line 3 "gm82c765b.h"
int Recalibrate(void);
int ReadID(void);
int Seek(int newcylinder); 
int SenseDriverStatus(void);
int SenseInterrupt(void);
int WriteData(int cylinder,int head,int sector,int numberofsector, 
				char *data,int datalength );
int ReadData(int cylinder,int head,int sector,int numberofsector, 
				char *data,int datalength );
#line 3 "flash.h"
void EraseWholeFlash(void);
void EraseSector(int Sector);
void ReadDataFromFlash(int Sector,int StartAddr,char *data,int datalength);
void WriteDataInFlash(int Sector,int StartAddr,char *data,int datalength);
#line 4 "global.h"
extern unsigned char databuffer[1024];
extern unsigned char databuffer1[512];
extern BPB_FAT 	bpb;
extern int curcylinder;
extern int filecounts;
extern int curFlashPage;
extern int curFlashOffset;
#line 3 "Delay.h"
void Delay50mS(void);
void Delay25mS(void);
void Delay4mS(void);
void Delay50uS(void);
void Delay8uS(void);
void Delay12uS(void);
void Delay24uS(void);
#line 8 "main.c"
int initial(void)
{
	asm(" SETC INTM");  
	portFFFF=0x0000;         
	asm(" CLRC SXM");  
	asm(" CLRC OVM");
	asm(" CLRC CNF");   
	*(volatile unsigned int *)0x7018=0x83FE;    
	*(volatile unsigned int *)0x7019=0x000E;
	*(volatile unsigned int *)0x7029=0x0E8;      	
}
 
void main(void)
{ 
	int i=0; 	
	initial();	
	portFFFF=0x01f8; 
   	Initial8255();    
    InitialGM();
    Delay50uS();        
     

    EraseWholeFlash();    
    i=Specify();    
    i=SenseDriverStatus();       
    i=GetBiosParameterBlock(&bpb);    
    i=ListFileInRootDir();
    i=ReadFileFromFloppy(5);
    i=ReadFileFromFloppy(2);  
    while(1); 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?