#include "lc4_memory.h" #include /* declarations of functions that must defined in lc4_loader.c */ /** * opens up name of the file passed in, returns a pointer * to the open file * * returns the FILE pointer upon success, else NULL. */ FILE *open_file(char *file_name); /** * parses the given input file into an ordered (by memory address) * linked list with the passed in row_of_memory as the head. * * returns 0 upon successs, non-zero if an error occurs. */ int parse_file(FILE *my_obj_file, row_of_memory **memory); /** * writes the contents of the linked list to the given file * in the correct format. * * returns 0 upon success, non-zero if an error occurs. */ int output_file(char *file_name, row_of_memory *memory); /** * replaces the file extension of the given file name * with the given extension, if the current extension matches * the current extension. * * returns 0 upon success, non-zero if an error occurs. */ void replace_file_ext(char *file_name, char *curr_ext, char *new_ext); /** * converts the given value to the given endian format and masks it * */ void convert_endian(unsigned short int *value, const short int endian); /** * close input file, if fails, release LL memory and prints an error message * */ int close_file(FILE *file, row_of_memory **memory);