lseek simulator working
This commit is contained in:
@@ -136,13 +136,28 @@ int main (int argc, char **argv) {
|
||||
|
||||
printf("\n\n******** Fixing fileio START Native Vecadd running ********\n\n");
|
||||
|
||||
FILE *fp;
|
||||
char buff[1024];
|
||||
|
||||
fp = fopen("/home/fares/Desktop/Vortex/simX/reading_data.txt", "r");
|
||||
// fscanf(fp, "%s %s %s %s", buff);
|
||||
fgets(buff, 41, (FILE*)fp);
|
||||
printf("1 : %s\n", buff );
|
||||
FILE *f = fopen("/home/fares/Desktop/Vortex/simX/reading_data.txt", "r");
|
||||
fseek(f, 0, SEEK_END);
|
||||
int fsize = ftell(f);
|
||||
fseek(f, 0, SEEK_SET); /* same as rewind(f); */
|
||||
|
||||
char *string = (char *) malloc(fsize + 1);
|
||||
fread(string, 1, fsize, f);
|
||||
fclose(f);
|
||||
|
||||
string[fsize] = 0;
|
||||
|
||||
printf("%s", string);
|
||||
|
||||
|
||||
// FILE *fp;
|
||||
// char buff[1024];
|
||||
|
||||
// fp = fopen("/home/fares/Desktop/Vortex/simX/reading_data.txt", "r");
|
||||
// // fscanf(fp, "%s %s %s %s", buff);
|
||||
// fgets(buff, 41, (FILE*)fp);
|
||||
// printf("1 : %s\n", buff );
|
||||
|
||||
exit(0);
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -95,7 +95,7 @@ void download(char ** ptr, char * drain)
|
||||
|
||||
void _close()
|
||||
{
|
||||
vx_print_str("Hello from _close\n");
|
||||
// vx_print_str("Hello from _close\n");
|
||||
}
|
||||
|
||||
int _fstat(int file, struct stat * st)
|
||||
@@ -152,12 +152,35 @@ int _isatty (int file)
|
||||
return 1;
|
||||
}
|
||||
|
||||
void _lseek()
|
||||
int _lseek(int fd, int offset, int whence)
|
||||
{
|
||||
// vx_print_str("Hello from _lseek\n");
|
||||
char * write_buffer = (char *) FILE_IO_WRITE;
|
||||
char * read_buffer = (char *) FILE_IO_READ;
|
||||
|
||||
int cmd_id = LSEEK;
|
||||
|
||||
upload((char **) &write_buffer, (char *) &cmd_id , sizeof(int));
|
||||
upload((char **) &write_buffer, (char *) &fd , sizeof(int));
|
||||
upload((char **) &write_buffer, (char *) &offset , sizeof(int));
|
||||
upload((char **) &write_buffer, (char *) &whence , sizeof(int));
|
||||
|
||||
|
||||
trap_to_simulator();
|
||||
|
||||
int retval;
|
||||
|
||||
download((char **) &read_buffer, (char *) &retval);
|
||||
|
||||
return retval;
|
||||
|
||||
vx_print_str("Hello from _lseek\n");
|
||||
}
|
||||
|
||||
// void _lseek()
|
||||
// {
|
||||
|
||||
// }
|
||||
|
||||
int _read (int file, char *ptr, int len)
|
||||
{
|
||||
|
||||
@@ -250,7 +273,7 @@ void * _sbrk (int nbytes)
|
||||
|
||||
void _exit(int val)
|
||||
{
|
||||
vx_print_str("Hello from exit\n");
|
||||
// vx_print_str("Hello from exit\n");
|
||||
vx_tmc(0);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user