#include "mem.h" #include "mem_seg.h" #include #include #include int main(int argc, char** argv) { if(argc != 2) { printf("provide target directory\n"); return 1; } const char *dirpath = argv[1]; const char *filename = "seg_data.csv"; char *tgtpath = (char*)calloc(strlen(dirpath) + strlen(filename) + 2, sizeof(char)); if(tgtpath == NULL) { return 1; } sprintf(tgtpath, "%s/%s", dirpath, filename); tgtpath[strlen(dirpath) + strlen(filename) + 1] = 0; FILE *fptr; fptr = fopen(tgtpath, "w"); if(fptr == NULL) { printf("errof opening file\n"); return 1; } memseg_metadata_t requiredSegments[] = MEMSEG_DEFINES; fprintf(fptr, "seg_id;name;word_len;default_size;default_addr;is_executable\n"); for(size_t i = 0; i < sizeof(requiredSegments)/sizeof(memseg_metadata_t); i++) { const memseg_metadata_t seg_def = requiredSegments[i]; fprintf(fptr, "%d;%s;%d;%lu;%lu;%d\n", seg_def.seg_id, seg_def.name, seg_def.word_len, seg_def.default_size, seg_def.default_addr, seg_def.is_executable); } fclose(fptr); free(tgtpath); return 0; }