2024-02-03 18:03:37 +00:00
|
|
|
#include <stdint.h>
|
2024-01-29 12:48:53 +00:00
|
|
|
|
|
|
|
char* disassemble(uint32_t opcode);
|
2024-02-03 18:03:37 +00:00
|
|
|
|
|
|
|
struct label_ll_t{
|
|
|
|
char* name;
|
|
|
|
uint32_t address;
|
|
|
|
struct label_ll_t *next;
|
|
|
|
};
|
|
|
|
|
|
|
|
struct assembler_context_t{
|
2024-02-12 17:51:16 +00:00
|
|
|
struct label_ll_t *label_ll;
|
|
|
|
uint32_t current_location;
|
2024-02-03 18:03:37 +00:00
|
|
|
};
|
|
|
|
|
2024-02-12 17:51:16 +00:00
|
|
|
uint32_t assemble_line(char *line, struct assembler_context_t *assembler_context);
|
|
|
|
int assembler_context_process(char* line,struct assembler_context_t *tofree);
|
|
|
|
|
|
|
|
struct assembler_context_t *malloc_assembler_context();
|
|
|
|
void free_assembler_context(struct assembler_context_t *assembler_context);
|