diff --git a/bsp/simulator/drivers/dfs_win32.c b/bsp/simulator/drivers/dfs_win32.c index f0e08a958dd358d573dba6c4164cef060ab3e1cb..15ad0fdb5151798d850a1db2a5443bf83502e3c0 100644 --- a/bsp/simulator/drivers/dfs_win32.c +++ b/bsp/simulator/drivers/dfs_win32.c @@ -345,7 +345,7 @@ static int dfs_win32_getdents(struct dfs_fd *file, struct dirent *dirp, rt_uint3 d->d_type = DT_DIR; else d->d_type = DT_REG; - d->d_namlen = strlen(wdirp->curr); + d->d_namlen = (rt_uint8_t)strlen(wdirp->curr); strncpy(d->d_name, wdirp->curr, DFS_PATH_MAX); d->d_reclen = (rt_uint16_t)sizeof(struct dirent); wdirp->curr += (strlen(wdirp->curr) + 1); diff --git a/bsp/simulator/drivers/drv_rtc.c b/bsp/simulator/drivers/drv_rtc.c index 4f6f3a6e37d57d383124392ce3d75779fb78c647..3d653494723e759267f794042a47e35c8ab59a72 100644 --- a/bsp/simulator/drivers/drv_rtc.c +++ b/bsp/simulator/drivers/drv_rtc.c @@ -58,10 +58,8 @@ static void get_rtc_timeval(struct timeval *tv) tv->tv_usec = sys_time.wMilliseconds * 1000UL; } -static rt_err_t windows_rtc_control(rt_device_t dev, int cmd, void *args) +static rt_err_t pc_rtc_control(rt_device_t dev, int cmd, void *args) { - struct tm newtime; - RT_ASSERT(dev != RT_NULL); switch (cmd) @@ -70,7 +68,7 @@ static rt_err_t windows_rtc_control(rt_device_t dev, int cmd, void *args) { struct timeval tv; get_rtc_timeval(&tv); - *(rt_uint32_t *) args = tv.tv_sec; + *(time_t*) args = tv.tv_sec; break; } case RT_DEVICE_CTRL_RTC_GET_TIMEVAL: @@ -104,18 +102,18 @@ static rt_err_t windows_rtc_control(rt_device_t dev, int cmd, void *args) } #ifdef RT_USING_DEVICE_OPS -const static struct rt_device_ops soft_rtc_ops = +const static struct rt_device_ops pc_rtc_ops = { RT_NULL, RT_NULL, RT_NULL, RT_NULL, RT_NULL, - windows_rtc_control + pc_rtc_control }; #endif -int rt_windows_rtc_init(void) +int rt_pc_rtc_init(void) { /* make sure only one 'rtc' device */ RT_ASSERT(!rt_device_find("rtc")); @@ -133,18 +131,18 @@ int rt_windows_rtc_init(void) /* register rtc device */ #ifdef RT_USING_DEVICE_OPS - rtc_dev.ops = &soft_rtc_ops; + rtc_dev.ops = &pc_rtc_ops; #else rtc_dev.init = RT_NULL; rtc_dev.open = RT_NULL; rtc_dev.close = RT_NULL; rtc_dev.read = RT_NULL; rtc_dev.write = RT_NULL; - rtc_dev.control = windows_rtc_control; + rtc_dev.control = pc_rtc_control; #endif rtc_dev.user_data = RT_NULL; /* no private */ rt_device_register(&rtc_dev, "rtc", RT_DEVICE_FLAG_RDWR); return 0; } -INIT_BOARD_EXPORT(rt_windows_rtc_init); +INIT_BOARD_EXPORT(rt_pc_rtc_init); diff --git a/bsp/simulator/drivers/uart_console.c b/bsp/simulator/drivers/uart_console.c index 8fd799b297bf792c777d7b41715871314d5e81af..ca4119429ec5336e57378067a58eaf9dd1e80b20 100644 --- a/bsp/simulator/drivers/uart_console.c +++ b/bsp/simulator/drivers/uart_console.c @@ -29,6 +29,7 @@ static struct rt_serial_device _serial; #include #include #include +extern int getch(void); /* * Handler for OSKey Thread diff --git a/components/finsh/shell.c b/components/finsh/shell.c index 1fc2bf7bcd5e105466bf82029c28a4fa4ac2ea6c..c06b688ed374514957952c1cda25e4814ae331b9 100644 --- a/components/finsh/shell.c +++ b/components/finsh/shell.c @@ -529,7 +529,7 @@ void finsh_thread_entry(void *parameter) /* copy the history command */ rt_memcpy(shell->line, &shell->cmd_history[shell->current_history][0], FINSH_CMD_SIZE); - shell->line_curpos = shell->line_position = strlen(shell->line); + shell->line_curpos = shell->line_position = (rt_uint16_t)strlen(shell->line); shell_handle_history(shell); #endif continue; @@ -551,7 +551,7 @@ void finsh_thread_entry(void *parameter) rt_memcpy(shell->line, &shell->cmd_history[shell->current_history][0], FINSH_CMD_SIZE); - shell->line_curpos = shell->line_position = strlen(shell->line); + shell->line_curpos = shell->line_position = (rt_uint16_t)strlen(shell->line); shell_handle_history(shell); #endif continue; @@ -591,7 +591,7 @@ void finsh_thread_entry(void *parameter) /* auto complete */ shell_auto_complete(&shell->line[0]); /* re-calculate position */ - shell->line_curpos = shell->line_position = strlen(shell->line); + shell->line_curpos = shell->line_position = (rt_uint16_t)strlen(shell->line); continue; }