📄 fdump.c
字号:
#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <unistd.h>int main(int argc, char **argv){ unsigned char buf[8]; unsigned int i, count, bytes = 0; FILE *fd_in, *fd_out; if (argc != 4) { fprintf(stderr, "\n\tusage: %s <ucode.bin> <array_name> <output_name>\n\n", argv[0]); return -1; } fd_in = fopen(argv[1], "rb"); if (fd_in == NULL) { fprintf(stderr, "firmware file '%s' not found\n", argv[1]); return -1; } fd_out = fopen(argv[3], "w+"); if (fd_out == NULL) { fprintf(stderr, "cannot create output file '%s'\n", argv[3]); return -1; } fprintf(fd_out, "\n#include <asm/types.h>\n\nu8 %s [] = {", argv[2]); while ((count = fread(buf, 1, 8, fd_in)) > 0) { fprintf(fd_out, "\n\t"); for (i = 0; i < count; i++, bytes++) fprintf(fd_out, "0x%02x, ", buf[i]); } fprintf(fd_out, "\n};\n\n"); fclose(fd_in); fclose(fd_out); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -