fwrite working

This commit is contained in:
felsabbagh3 2019-11-12 23:03:14 -05:00
parent ba3722c4bb
commit d0c1663f79
5 changed files with 23413 additions and 23356 deletions

File diff suppressed because it is too large Load diff

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -49,6 +49,9 @@ void download(char ** ptr, char * drain)
size = *((int *) src);
src += 4;
vx_printf("newlib.c: Size of download: ", size);
vx_printf("newlib.c: Real size: ", sizeof(struct stat));
for (int i = 0; i < size; i++)
{
drain[i] = (*src);
@ -78,9 +81,10 @@ int _fstat(int file, struct stat * st)
struct stat newSt;
download((char **) &read_buffer, (char *) &st);
download((char **) &read_buffer, (char *) &newSt);
st->st_mode = S_IFCHR;
// st->st_mode = S_IFCHR;
vx_printf("st_mode: ", st->st_mode);
vx_printf("st_dev: ", st->st_dev);
@ -93,7 +97,6 @@ int _fstat(int file, struct stat * st)
vx_printf("st_blocks: ", st->st_blocks);
// st->st_mode = newSt.st_mode;
return 0;
}

View file

@ -218,6 +218,7 @@ void trap_to_simulator(Warp & c)
fstat(file, &st);
fprintf(stderr, "------------------------\n");
fprintf(stderr, "Size of struct: %x\n", sizeof(struct stat));
fprintf(stderr, "st_mode: %d\n", st.st_mode);
fprintf(stderr, "st_dev: %d\n", st.st_dev);
fprintf(stderr, "st_ino: %d\n", st.st_ino);
@ -230,6 +231,15 @@ void trap_to_simulator(Warp & c)
fprintf(stderr, "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n");
upload(&write_buffer, (char *) &st, sizeof(struct stat), c);
cerr << "RAW Write BUFFER:\n";
unsigned original_write_buffer = 0x72000000;
for (int i = 0; i < 10; i++)
{
unsigned new_addr = original_write_buffer + (4*i);
unsigned data_read = c.core->mem.read(new_addr, c.supervisorMode);
cerr << hex << new_addr << ": " << data_read << "\n";
}
}
break;
default: