mirror of
https://github.com/vortexgpgpu/vortex.git
synced 2025-04-23 13:27:29 -04:00
fwrite working
This commit is contained in:
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
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue