/*
* header.c -- part of ZilUtils/ZilAsm
*
- * Copyright (C) 2016 Jason Self <j@jxself.org>
+ * Copyright (C) 2016, 2019 Jason Self <j@jxself.org>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
#include <string.h> /* bzero */
#include <assert.h>
+#include <stdio.h>
#include "header.h"
/* TODO */
return zmb;
}
+
+
+Word swapBytes(Word w)
+{
+ return ((w & 255) << 8) + (w >> 8);
+}
+
+
+void outputToFile(Program_header_struct *pHeader, FILE* file)
+{
+ Program_header_struct h;
+ memcpy(&h, pHeader, sizeof(Program_header_struct));
+
+ h.startPC = swapBytes(h.startPC);
+ h.h_file_size = swapBytes(h.h_file_size);
+ fwrite(&h, sizeof(Program_header_struct), 1, file);
+}
\ No newline at end of file