hex2mif.c
来自「DW8051 Verilog VHDL 源码和文档」· C语言 代码 · 共 50 行
C
50 行
#include <stdio.h>
#include <stdlib.h>
void process(FILE *, FILE *);
void prn_info();
int main(int argc, char **argv)
{
FILE *ifp, *ofp;
if (argc != 2) {
prn_info();
exit(1);
}
ifp = fopen(argv[1], "r");
ofp = fopen("program.mif", "w");
process(ifp, ofp);
fclose(ifp);
fclose(ofp);
return 0;
}
void process(FILE *ifp, FILE *ofp)
{
int c;
fprintf(ofp, "width = 16;\ndepth = 512;\n\n"
"address_radix = hex;\ndata_radix = hex;\n\n"
"content begin\n[0..1ff]: 0;\n\n");
while((c = getc(ifp)) != EOF) {
if (c != '\n')
putc(c, ofp);
else {
putc(';', ofp);
putc(c, ofp);
}
}
fprintf(ofp, "\n\nend;");
printf("Mission Accomplished");
}
void prn_info()
{
printf("Mission Failed");
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?