📄 tftpput.c
字号:
#include "tftpput.h"
#include "hexput.h"
#include "bioscall.h"
extern int startup_mode;extern int startup_param;static unsigned char *buf;static int data_len;int tftp_put_begin(void){ switch (startup_mode) { case BOOT_LOAD_PROGRAM: case BOOT_UPDATE_BIOS: case BOOT_UPDATE_FIRMWARE: printf("\r\nStarting the TFTP download...\r\n"); buf = (unsigned char *)0x8000; data_len = 0; break; default: break; } return 0;}int tftp_put(unsigned char *data, int len){ static int count = 0;
count += len;
if (count > 32 * 1024) { printf(".");
count = 0;
} switch (startup_mode) { case BOOT_LOAD_PROGRAM: case BOOT_UPDATE_BIOS: case BOOT_UPDATE_FIRMWARE: memcpy(buf + data_len, data, len); data_len += len; break; default: break; } return 0;}int update_bios(unsigned char *bios, int size){ return 0;}int update_system_table(unsigned char *system_table, int size){ return 0;}int update_firmware(unsigned char *firmware, int size){ return 0;}int tftp_put_end(void){ int ch; unsigned long l; void (*fp)(void); fp=(void (*)(void))0x8000; printf("\r\n"); switch (startup_mode) { case BOOT_LOAD_PROGRAM: case BOOT_UPDATE_BIOS: case BOOT_UPDATE_FIRMWARE: break; default: break; } printf("Boot uClinux? (y/n) "); while (1) { ch = getch(); if (ch == 'y' || ch == 'Y') { putch(ch); //bios_reboot(); (*fp)(); //reboot } if (ch == 'n' || ch == 'N') { putch(ch); break; } } printf("\r\n\r\n"); return 0;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -