#include <stdlib.h> | |
#include <string.h> | |
#include <stdio.h> | |
#define CRLF "\r\n" | |
#define BASE 0xfe0000 | |
#define RECLEN 32 | |
int main(int argc, char* argv[]) | |
{ | |
FILE *e,*o,*out; | |
int c,i; | |
unsigned char eprombuf[65536]; | |
int size; | |
if (argc != 4) { | |
fprintf(stderr, | |
"Combine two 8bit-EPROM files into a single merged one\n" | |
"and output it in 16bit binary format.\n" | |
"Usage: %s even.dat odd.dat output.dat\n\n", argv[0]); | |
exit(1); | |
} | |
e = fopen(argv[1], "rb"); | |
o = fopen(argv[2], "rb"); | |
out = fopen(argv[3], "wb"); | |
if (!e) { | |
fprintf(stderr, "Could not open %s\n", argv[1]); | |
exit(1); | |
} | |
if (!o) { | |
fprintf(stderr, "Could not open %s\n", argv[2]); | |
exit(1); | |
} | |
if (!out) { | |
fprintf(stderr, "Could not open %s\n", argv[3]); | |
exit(1); | |
} | |
size = 0; | |
while (!feof(e)) { | |
if ((c = fgetc(e)) == EOF) break; | |
eprombuf[size++] = c; | |
if ((c = fgetc(o)) == EOF) break; | |
eprombuf[size++] = c; | |
} | |
printf("%s: Size = %d\n", argv[3], size); | |
fclose(e); | |
fclose(o); | |
for (i=0; i<size; i++) { | |
fputc(eprombuf[i],out); | |
} | |
fclose(out); | |
exit(0); | |
} | |