From d3c6a6abb68946a85aa48cd63c5c9928020269b7 Mon Sep 17 00:00:00 2001 From: "bernard.xiong" Date: Fri, 16 Oct 2009 00:06:15 +0000 Subject: [PATCH] add lcd driver; add gui routine git-svn-id: https://rt-thread.googlecode.com/svn/trunk@105 bbd45198-f89e-11dd-88c7-29a3b14d5316 --- bsp/stm32_radio/application.c | 70 +++---- bsp/stm32_radio/board.c | 50 ++++- bsp/stm32_radio/board.h | 4 + bsp/stm32_radio/fmt0371/fmt0371.h | 2 +- bsp/stm32_radio/gui.c | 26 +++ bsp/stm32_radio/lcd.c | 200 +++++++++++++------- bsp/stm32_radio/lcd.h | 20 ++ bsp/stm32_radio/project.Opt | 296 +++++++++++++++++------------- bsp/stm32_radio/project.Uv2 | 74 +++++++- bsp/stm32_radio/rtconfig.h | 1 + 10 files changed, 496 insertions(+), 247 deletions(-) create mode 100644 bsp/stm32_radio/gui.c create mode 100644 bsp/stm32_radio/lcd.h diff --git a/bsp/stm32_radio/application.c b/bsp/stm32_radio/application.c index 1040ef392..14cefe92f 100644 --- a/bsp/stm32_radio/application.c +++ b/bsp/stm32_radio/application.c @@ -22,6 +22,8 @@ #include #include "board.h" +#include "netbuffer.h" +#include "lcd.h" #ifdef RT_USING_DFS /* dfs init */ @@ -39,6 +41,11 @@ #include #endif +#ifdef RT_USING_RTGUI +#include +#include +#endif + /* key_enter PA0 key_down PA1 @@ -77,41 +84,6 @@ void rt_key_entry(void *parameter) } } -extern rt_err_t lcd_hw_init(void); -void rt_lcd_entry(void *parameter) -{ - rt_device_t device; - unsigned int i,k; - unsigned short color[]={0xf800,0x07e0,0x001f,0xffe0,0x0000,0xffff,0x07ff,0xf81f}; - - lcd_hw_init(); - - device = rt_device_find("lcd"); - - rt_kprintf("Now test the LCD......\r\n"); - while (1) - { - for (k=0;k<8;k++) - { - for (i=0;i<320*240;i++) - { - device->write(device,i*2,&color[k],2); - } - rt_thread_delay(RT_TICK_PER_SECOND); - } - } -} - -void lcd_test() -{ - rt_thread_t lcd_tid; - lcd_tid = rt_thread_create("lcd", - rt_lcd_entry, RT_NULL, - 1024, 30, 5); - if (lcd_tid != RT_NULL) rt_thread_startup(lcd_tid); -} -FINSH_FUNCTION_EXPORT(lcd_test, test lcd) - /* thread phase init */ void rt_init_thread_entry(void *parameter) { @@ -146,12 +118,40 @@ void rt_init_thread_entry(void *parameter) /* init netbuf worker */ net_buf_init(320 * 1024); #endif + + /* RTGUI Initialization */ +#ifdef RT_USING_RTGUI + { + rtgui_rect_t rect; + + rtgui_system_server_init(); + + /* register dock panel */ + rect.x1 = 0; + rect.y1 = 0; + rect.x2 = 240; + rect.y2 = 25; + + rtgui_panel_register("info", &rect); + + /* register main panel */ + rect.x1 = 0; + rect.y1 = 25; + rect.x2 = 240; + rect.y2 = 320; + rtgui_panel_register("main", &rect); + + rt_hw_lcd_init(); + } +#endif } int rt_application_init() { rt_thread_t init_thread; + rt_hw_lcd_init(); + #if (RT_THREAD_PRIORITY_MAX == 32) init_thread = rt_thread_create("init", rt_init_thread_entry, RT_NULL, diff --git a/bsp/stm32_radio/board.c b/bsp/stm32_radio/board.c index a85258e2c..7eee40b23 100644 --- a/bsp/stm32_radio/board.c +++ b/bsp/stm32_radio/board.c @@ -178,6 +178,31 @@ void rt_hw_board_init() } } +#if STM32_CONSOLE_USART == 1 +#define CONSOLE_RX_PIN GPIO_Pin_9 +#define CONSOLE_TX_PIN GPIO_Pin_10 +#define CONSOLE_GPIO GPIOA +#define CONSOLE_USART USART1 +#elif STM32_CONSOLE_USART == 2 + +#if defined(STM32_LD) || defined(STM32_MD) + #define CONSOLE_RX_PIN GPIO_Pin_6 + #define CONSOLE_TX_PIN GPIO_Pin_5 + #define CONSOLE_GPIO GPIOD +#elif defined(STM32_HD) + #define CONSOLE_RX_PIN GPIO_Pin_3 + #define CONSOLE_TX_PIN GPIO_Pin_2 + #define CONSOLE_GPIO GPIOA +#endif + +#define CONSOLE_USART USART2 +#elif STM32_CONSOLE_USART == 2 +#define CONSOLE_RX_PIN GPIO_Pin_11 +#define CONSOLE_TX_PIN GPIO_Pin_10 +#define CONSOLE_GPIO GPIOB +#define CONSOLE_USART USART3 +#endif + /* init console to support rt_kprintf */ static void rt_hw_console_init() { @@ -186,27 +211,29 @@ static void rt_hw_console_init() | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOF, ENABLE); +#if STM32_CONSOLE_USART == 0 +#else /* GPIO configuration */ { GPIO_InitTypeDef GPIO_InitStructure; /* Configure USART1 Tx (PA.09) as alternate function push-pull */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; + GPIO_InitStructure.GPIO_Pin = CONSOLE_RX_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; - GPIO_Init(GPIOA, &GPIO_InitStructure); + GPIO_Init(CONSOLE_GPIO, &GPIO_InitStructure); /* Configure USART1 Rx (PA.10) as input floating */ - GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; + GPIO_InitStructure.GPIO_Pin = CONSOLE_TX_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; - GPIO_Init(GPIOA, &GPIO_InitStructure); + GPIO_Init(CONSOLE_GPIO, &GPIO_InitStructure); } /* USART configuration */ { USART_InitTypeDef USART_InitStructure; - /* USART1 configured as follow: + /* USART configured as follow: - BaudRate = 115200 baud - Word Length = 8 Bits - One Stop Bit @@ -225,10 +252,11 @@ static void rt_hw_console_init() USART_InitStructure.USART_Parity = USART_Parity_No; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; - USART_Init(USART1, &USART_InitStructure); + USART_Init(CONSOLE_USART, &USART_InitStructure); /* Enable USART1 */ - USART_Cmd(USART1, ENABLE); + USART_Cmd(CONSOLE_USART, ENABLE); } +#endif } /* write one character to serial, must not trigger interrupt */ @@ -240,8 +268,8 @@ static void rt_hw_console_putc(const char c) */ if (c=='\n')rt_hw_console_putc('\r'); - while (!(USART1->SR & USART_FLAG_TXE)); - USART1->DR = (c & 0x1FF); + while (!(CONSOLE_USART->SR & USART_FLAG_TXE)); + CONSOLE_USART->DR = (c & 0x1FF); } /** @@ -251,10 +279,14 @@ static void rt_hw_console_putc(const char c) */ void rt_hw_console_output(const char* str) { +#if STM32_CONSOLE_USART == 0 + /* no console */ +#else while (*str) { rt_hw_console_putc (*str++); } +#endif } /*@}*/ diff --git a/bsp/stm32_radio/board.h b/bsp/stm32_radio/board.h index afada4832..b812df3ea 100644 --- a/bsp/stm32_radio/board.h +++ b/bsp/stm32_radio/board.h @@ -37,6 +37,10 @@ // Default: 64 #define STM32_SRAM_SIZE 64 #define STM32_SRAM_END (0x20000000 + STM32_SRAM_SIZE * 1024) + +// Console on USART: <0=> no console <1=>USART 1 <2=>USART 2 <3=> USART 3 +// Default: 1 +#define STM32_CONSOLE_USART 1 void rt_hw_board_led_on(int n); void rt_hw_board_led_off(int n); diff --git a/bsp/stm32_radio/fmt0371/fmt0371.h b/bsp/stm32_radio/fmt0371/fmt0371.h index ab108317e..2e4acd9aa 100644 --- a/bsp/stm32_radio/fmt0371/fmt0371.h +++ b/bsp/stm32_radio/fmt0371/fmt0371.h @@ -13,8 +13,8 @@ #define LCD_ADDR (*((volatile unsigned char *) 0x64000000)) // RS = 0 #define LCD_DATA (*((volatile unsigned char *) 0x64000004)) // RS = 1 - #define LCD_DATA16(a) LCD_DATA = (unsigned char)(a>>8);LCD_DATA = (unsigned char)a // RS = 1 & WIDHT = 16 +#define LCD_DATA16_READ(a) do { a = (LCD_DATA << 8) | (LCD_DATA); } while (0) #define LCD_WR_CMD(a,b,c) LCD_ADDR = b;LCD_DATA16(c) #define LCD_WR_REG(a) LCD_ADDR = a #define LCD_WR_DATA8(a) LCD_DATA = a diff --git a/bsp/stm32_radio/gui.c b/bsp/stm32_radio/gui.c new file mode 100644 index 000000000..94e94148d --- /dev/null +++ b/bsp/stm32_radio/gui.c @@ -0,0 +1,26 @@ +#include +#include +#include + +#include + +void msg() +{ + struct rtgui_win* msgbox; + struct rtgui_rect rect = {50, 50, 200, 200}; + + msgbox = rtgui_win_create("Information", &rect, RTGUI_WIN_STYLE_DEFAULT); + if (msgbox != RT_NULL) + { + struct rtgui_box* box = rtgui_box_create(RTGUI_VERTICAL, RT_NULL); + struct rtgui_label* label = rtgui_label_create("Hello World"); + + rtgui_win_set_box(msgbox, box); + RTGUI_WIDGET(label)->align = RTGUI_ALIGN_CENTER_HORIZONTAL | + RTGUI_ALIGN_CENTER_VERTICAL; + rtgui_box_append(box, RTGUI_WIDGET(label)); + + rtgui_win_show(msgbox); + } +} +FINSH_FUNCTION_EXPORT(msg, msg on gui) diff --git a/bsp/stm32_radio/lcd.c b/bsp/stm32_radio/lcd.c index 860b24287..37fa4d4aa 100644 --- a/bsp/stm32_radio/lcd.c +++ b/bsp/stm32_radio/lcd.c @@ -1,81 +1,125 @@ #include "stm32f10x.h" #include "rtthread.h" #include "fmt0371/FMT0371.h" +#include +#include -static rt_err_t lcd_init (rt_device_t dev) +void rt_hw_lcd_update(rtgui_rect_t *rect); +rt_uint8_t * rt_hw_lcd_get_framebuffer(void); +void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y); +void rt_hw_lcd_get_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y); +void rt_hw_lcd_draw_hline(rtgui_color_t *c, rt_base_t x1, rt_base_t x2, rt_base_t y); +void rt_hw_lcd_draw_vline(rtgui_color_t *c, rt_base_t x, rt_base_t y1, rt_base_t y2); + +struct rtgui_graphic_driver _rtgui_lcd_driver = { - ftm0371_port_init(); - ftm0371_init(); - return RT_EOK; + "lcd", + 2, + 240, + 320, + rt_hw_lcd_update, + rt_hw_lcd_get_framebuffer, + rt_hw_lcd_set_pixel, + rt_hw_lcd_get_pixel, + rt_hw_lcd_draw_hline, + rt_hw_lcd_draw_vline +}; + +void rt_hw_lcd_update(rtgui_rect_t *rect) +{ + /* nothing for none-DMA mode driver */ } -static rt_err_t lcd_open(rt_device_t dev, rt_uint16_t oflag) +rt_uint8_t * rt_hw_lcd_get_framebuffer(void) { - return RT_EOK; + return RT_NULL; /* no framebuffer driver */ } -static rt_err_t lcd_close(rt_device_t dev) +void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y) { - return RT_EOK; + unsigned short p; + + /* get color pixel */ + p = rtgui_color_to_565(*c); + + /* set X point */ + LCD_ADDR = 0x02; + LCD_DATA = x; + + /* set Y point */ + LCD_ADDR = 0x03; + LCD_DATA16(y); + + /* write pixel */ + LCD_ADDR = 0x0E; + LCD_DATA16(p); } -static rt_err_t lcd_control(rt_device_t dev, rt_uint8_t cmd, void *args) +void rt_hw_lcd_get_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y) { - /* rate control */ - return RT_EOK; -} - -static rt_size_t lcd_write (rt_device_t dev, rt_off_t pos, const void* buffer, rt_size_t size) -{ - unsigned int i; - unsigned short *p; - unsigned int x,y; - - size = size / 2; - y = (pos/2) / 240; - x = (pos/2)%240; - - LCD_ADDR = 0x02; // X start point + /* set X point */ + LCD_ADDR = 0x02; LCD_DATA = x; - LCD_ADDR = 0x03; // Y start point + /* set Y point */ + LCD_ADDR = 0x03; LCD_DATA16( y ); - LCD_ADDR = 0x0E; // start write - p = (unsigned short *) buffer; - - if (size > (240-x)) - { - for (i=0;i<(240-x);i++) - { - LCD_DATA16(*p++); - } - LCD_ADDR = 0x02; // X start point - LCD_DATA = 0; - - LCD_ADDR = 0x03; // Y start point - LCD_DATA16( y+1 ); - size -= (x+1); - - while (size--) - { - LCD_DATA16(*p++); - } - } - else - { - for (i=0;i + +void hline(rt_base_t x1, rt_base_t x2, rt_base_t y, rt_uint32_t pixel) +{ + rt_hw_lcd_draw_hline(&pixel, x1, x2, y); +} +FINSH_FUNCTION_EXPORT(hline, draw a hline); + +void vline(int x, int y1, int y2, rt_uint32_t pixel) +{ + rt_hw_lcd_draw_vline(&pixel, x, y1, y2); +} +FINSH_FUNCTION_EXPORT(vline, draw a vline); + +void cls() +{ + rt_size_t index; + rtgui_color_t white = RTGUI_RGB(0xff, 0xff, 0xff); + + for(index = 0; index < 320; index ++) + rt_hw_lcd_draw_hline(&white, 0, 240, index); +} +FINSH_FUNCTION_EXPORT(cls, clear screen); diff --git a/bsp/stm32_radio/lcd.h b/bsp/stm32_radio/lcd.h new file mode 100644 index 000000000..7c1bf6c6d --- /dev/null +++ b/bsp/stm32_radio/lcd.h @@ -0,0 +1,20 @@ +/* + * File : lcd.h + * This file is part of RT-Thread RTOS + * COPYRIGHT (C) 2006 - 2009, RT-Thread Development Team + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rt-thread.org/license/LICENSE + * + * Change Logs: + * Date Author Notes + * 2009-10-16 Bernard first version + */ + +#ifndef __LCD_HW_H__ +#define __LCD_HW_H__ + +rt_err_t rt_hw_lcd_init(void); + +#endif diff --git a/bsp/stm32_radio/project.Opt b/bsp/stm32_radio/project.Opt index 54e2d6d19..c08a7c64e 100644 --- a/bsp/stm32_radio/project.Opt +++ b/bsp/stm32_radio/project.Opt @@ -20,12 +20,13 @@ GRPOPT 6,(finsh),0,0,0 GRPOPT 7,(Filesystem),0,0,0 GRPOPT 8,(LwIP),0,0,0 GRPOPT 9,(mp3),0,0,0 +GRPOPT 10,(RTGUI),1,0,0 OPTFFF 1,1,5,469762048,0,0,0,0,<.\rtconfig.h> -OPTFFF 1,2,5,956301314,0,13,28,0,<.\board.h> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,0,0,0,0,0,0,0,0,86,4,0,0,127,1,0,0 } +OPTFFF 1,2,5,956301312,0,0,0,0,<.\board.h> OPTFFF 1,3,5,0,0,0,0,0,<.\stm32f10x_conf.h> OPTFFF 1,4,1,0,0,0,0,0,<.\application.c> -OPTFFF 1,5,1,0,0,0,0,0,<.\board.c> +OPTFFF 1,5,1,83886080,0,0,0,0,<.\board.c> OPTFFF 1,6,1,0,0,0,0,0,<.\startup.c> OPTFFF 1,7,1,0,0,0,0,0,<.\stm32f10x_it.c> OPTFFF 1,8,1,0,0,0,0,0,<.\usart.c> @@ -37,139 +38,171 @@ OPTFFF 1,13,1,0,0,0,0,0,<.\fsmc_nand.c> OPTFFF 1,14,1,0,0,0,0,0,<.\fsmc_sram.c> OPTFFF 1,15,1,0,0,0,0,0,<.\fmt0371\fmt0371.c> OPTFFF 1,16,1,234881024,0,0,0,0,<.\http.c> -OPTFFF 1,17,1,0,0,0,0,0,<.\lcd.c> +OPTFFF 1,17,1,520093696,0,0,0,0,<.\lcd.c> OPTFFF 1,18,1,0,0,0,0,0,<..\..\net\apps\tcpecho.c> OPTFFF 1,19,1,268435456,0,0,0,0,<..\..\net\apps\udpecho.c> OPTFFF 1,20,1,620756992,0,0,0,0,<.\mp3.c> OPTFFF 1,21,1,369098752,0,0,0,0,<.\wav.c> OPTFFF 1,22,1,620756992,0,0,0,0,<.\netbuffer.c> -OPTFFF 2,23,1,0,0,0,0,0,<..\..\src\clock.c> -OPTFFF 2,24,1,0,0,0,0,0,<..\..\src\idle.c> -OPTFFF 2,25,1,0,0,0,0,0,<..\..\src\ipc.c> -OPTFFF 2,26,1,0,0,0,0,0,<..\..\src\mempool.c> -OPTFFF 2,27,1,0,0,0,0,0,<..\..\src\mem.c> -OPTFFF 2,28,1,0,0,0,0,0,<..\..\src\object.c> -OPTFFF 2,29,1,0,0,0,0,0,<..\..\src\scheduler.c> -OPTFFF 2,30,1,0,0,0,0,0,<..\..\src\thread.c> -OPTFFF 2,31,1,0,0,0,0,0,<..\..\src\timer.c> -OPTFFF 2,32,1,0,0,0,0,0,<..\..\src\irq.c> -OPTFFF 2,33,1,0,0,0,0,0,<..\..\src\kservice.c> -OPTFFF 2,34,1,0,0,0,0,0,<..\..\src\device.c> -OPTFFF 2,35,1,0,0,0,0,0,<..\..\src\slab.c> -OPTFFF 3,36,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\stack.c> -OPTFFF 3,37,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\interrupt.c> -OPTFFF 3,38,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\cpu.c> -OPTFFF 3,39,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\serial.c> -OPTFFF 3,40,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\context_rvds.S> -OPTFFF 3,41,2,335544320,0,0,0,0,<..\..\libcpu\arm\stm32\start_rvds.s> -OPTFFF 3,42,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault.c> -OPTFFF 3,43,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault_rvds.S> -OPTFFF 4,44,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c> -OPTFFF 4,45,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c> -OPTFFF 4,46,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c> -OPTFFF 4,47,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_can.c> -OPTFFF 4,48,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_crc.c> -OPTFFF 4,49,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dac.c> -OPTFFF 4,50,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dbgmcu.c> -OPTFFF 4,51,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c> -OPTFFF 4,52,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c> -OPTFFF 4,53,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c> -OPTFFF 4,54,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_fsmc.c> -OPTFFF 4,55,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c> -OPTFFF 4,56,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c> -OPTFFF 4,57,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c> -OPTFFF 4,58,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_pwr.c> -OPTFFF 4,59,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c> -OPTFFF 4,60,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rtc.c> -OPTFFF 4,61,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c> -OPTFFF 4,62,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c> -OPTFFF 4,63,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_tim.c> -OPTFFF 4,64,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c> -OPTFFF 4,65,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c> -OPTFFF 5,66,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\core_cm3.c> -OPTFFF 5,67,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\system_stm32f10x.c> -OPTFFF 6,68,1,0,0,0,0,0,<..\..\finsh\finsh_compiler.c> -OPTFFF 6,69,1,0,0,0,0,0,<..\..\finsh\finsh_error.c> -OPTFFF 6,70,1,0,0,0,0,0,<..\..\finsh\finsh_heap.c> -OPTFFF 6,71,1,0,0,0,0,0,<..\..\finsh\finsh_init.c> -OPTFFF 6,72,1,0,0,0,0,0,<..\..\finsh\finsh_node.c> -OPTFFF 6,73,1,0,0,0,0,0,<..\..\finsh\finsh_ops.c> -OPTFFF 6,74,1,0,0,0,0,0,<..\..\finsh\finsh_parser.c> -OPTFFF 6,75,1,0,0,0,0,0,<..\..\finsh\finsh_token.c> -OPTFFF 6,76,1,0,0,0,0,0,<..\..\finsh\finsh_var.c> -OPTFFF 6,77,1,0,0,0,0,0,<..\..\finsh\finsh_vm.c> -OPTFFF 6,78,1,0,0,0,0,0,<..\..\finsh\shell.c> -OPTFFF 6,79,1,0,0,0,0,0,<..\..\finsh\symbol.c> -OPTFFF 6,80,1,0,0,0,0,0,<..\..\finsh\cmd.c> -OPTFFF 7,81,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_init.c> -OPTFFF 7,82,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_fs.c> -OPTFFF 7,83,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_raw.c> -OPTFFF 7,84,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_util.c> -OPTFFF 7,85,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_cache.c> -OPTFFF 7,86,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_posix.c> -OPTFFF 7,87,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\efs.c> -OPTFFF 7,88,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\extract.c> -OPTFFF 7,89,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\partition.c> -OPTFFF 7,90,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\plibc.c> -OPTFFF 7,91,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\dir.c> -OPTFFF 7,92,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\fat.c> -OPTFFF 7,93,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\file.c> -OPTFFF 7,94,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\fs.c> -OPTFFF 7,95,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\ls.c> -OPTFFF 7,96,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\time.c> -OPTFFF 7,97,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\ui.c> -OPTFFF 8,98,1,0,0,0,0,0,<..\..\net\lwip\src\core\dhcp.c> -OPTFFF 8,99,1,0,0,0,0,0,<..\..\net\lwip\src\core\dns.c> -OPTFFF 8,100,1,0,0,0,0,0,<..\..\net\lwip\src\core\init.c> -OPTFFF 8,101,1,0,0,0,0,0,<..\..\net\lwip\src\core\netif.c> -OPTFFF 8,102,1,0,0,0,0,0,<..\..\net\lwip\src\core\pbuf.c> -OPTFFF 8,103,1,0,0,0,0,0,<..\..\net\lwip\src\core\raw.c> -OPTFFF 8,104,1,0,0,0,0,0,<..\..\net\lwip\src\core\stats.c> -OPTFFF 8,105,1,0,0,0,0,0,<..\..\net\lwip\src\core\sys.c> -OPTFFF 8,106,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp.c> -OPTFFF 8,107,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_in.c> -OPTFFF 8,108,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_out.c> -OPTFFF 8,109,1,0,0,0,0,0,<..\..\net\lwip\src\core\udp.c> -OPTFFF 8,110,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\autoip.c> -OPTFFF 8,111,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\icmp.c> -OPTFFF 8,112,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\igmp.c> -OPTFFF 8,113,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet.c> -OPTFFF 8,114,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet_chksum.c> -OPTFFF 8,115,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip.c> -OPTFFF 8,116,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_addr.c> -OPTFFF 8,117,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_frag.c> -OPTFFF 8,118,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_in.c> -OPTFFF 8,119,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_out.c> -OPTFFF 8,120,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_lib.c> -OPTFFF 8,121,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_msg.c> -OPTFFF 8,122,1,0,0,0,0,0,<..\..\net\lwip\src\api\err.c> -OPTFFF 8,123,1,0,0,0,0,0,<..\..\net\lwip\src\api\netbuf.c> -OPTFFF 8,124,1,0,0,0,0,0,<..\..\net\lwip\src\api\netdb.c> -OPTFFF 8,125,1,0,0,0,0,0,<..\..\net\lwip\src\api\netifapi.c> -OPTFFF 8,126,1,0,0,0,0,0,<..\..\net\lwip\src\api\tcpip.c> -OPTFFF 8,127,1,0,0,0,0,0,<..\..\net\lwip\src\netif\etharp.c> -OPTFFF 8,128,1,150994944,0,0,0,0,<..\..\net\lwip\src\netif\ethernetif.c> -OPTFFF 8,129,1,0,0,0,0,0,<..\..\net\lwip\src\netif\loopif.c> -OPTFFF 8,130,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch_init.c> -OPTFFF 8,131,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch.c> -OPTFFF 8,132,1,0,0,0,0,0,<..\..\net\lwip\src\api\sockets.c> -OPTFFF 8,133,1,0,0,0,0,0,<..\..\net\lwip\src\core\memp_tiny.c> -OPTFFF 9,134,1,268435456,0,0,0,0,<.\mp3\mp3dec.c> -OPTFFF 9,135,1,0,0,0,0,0,<.\mp3\mp3tabs.c> -OPTFFF 9,136,1,0,0,0,0,0,<.\mp3\real\bitstream.c> -OPTFFF 9,137,1,83886080,0,0,0,0,<.\mp3\real\buffers.c> -OPTFFF 9,138,1,0,0,0,0,0,<.\mp3\real\dct32.c> -OPTFFF 9,139,1,0,0,0,0,0,<.\mp3\real\dequant.c> -OPTFFF 9,140,1,0,0,0,0,0,<.\mp3\real\dqchan.c> -OPTFFF 9,141,1,0,0,0,0,0,<.\mp3\real\huffman.c> -OPTFFF 9,142,1,0,0,0,0,0,<.\mp3\real\hufftabs.c> -OPTFFF 9,143,1,0,0,0,0,0,<.\mp3\real\imdct.c> -OPTFFF 9,144,1,0,0,0,0,0,<.\mp3\real\scalfact.c> -OPTFFF 9,145,1,0,0,0,0,0,<.\mp3\real\stproc.c> -OPTFFF 9,146,1,0,0,0,0,0,<.\mp3\real\subband.c> -OPTFFF 9,147,1,0,0,0,0,0,<.\mp3\real\trigtabs.c> -OPTFFF 9,148,2,0,0,0,0,0,<.\mp3\real\arm\asmpoly_thumb2.s> -OPTFFF 9,149,2,0,0,0,0,0,<.\mp3\real\arm\asmmisc.s> +OPTFFF 1,23,1,33554434,0,1,24,0,<.\gui.c> { 44,0,0,0,2,0,0,0,3,0,0,0,255,255,255,255,255,255,255,255,252,255,255,255,226,255,255,255,22,0,0,0,29,0,0,0,208,2,0,0,238,0,0,0 } +OPTFFF 2,24,1,0,0,0,0,0,<..\..\src\clock.c> +OPTFFF 2,25,1,536870912,0,0,0,0,<..\..\src\idle.c> +OPTFFF 2,26,1,0,0,0,0,0,<..\..\src\ipc.c> +OPTFFF 2,27,1,0,0,0,0,0,<..\..\src\mempool.c> +OPTFFF 2,28,1,0,0,0,0,0,<..\..\src\mem.c> +OPTFFF 2,29,1,0,0,0,0,0,<..\..\src\object.c> +OPTFFF 2,30,1,0,0,0,0,0,<..\..\src\scheduler.c> +OPTFFF 2,31,1,0,0,0,0,0,<..\..\src\thread.c> +OPTFFF 2,32,1,0,0,0,0,0,<..\..\src\timer.c> +OPTFFF 2,33,1,0,0,0,0,0,<..\..\src\irq.c> +OPTFFF 2,34,1,0,0,0,0,0,<..\..\src\kservice.c> +OPTFFF 2,35,1,0,0,0,0,0,<..\..\src\device.c> +OPTFFF 2,36,1,0,0,0,0,0,<..\..\src\slab.c> +OPTFFF 3,37,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\stack.c> +OPTFFF 3,38,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\interrupt.c> +OPTFFF 3,39,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\cpu.c> +OPTFFF 3,40,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\serial.c> +OPTFFF 3,41,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\context_rvds.S> +OPTFFF 3,42,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\start_rvds.s> +OPTFFF 3,43,1,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault.c> +OPTFFF 3,44,2,0,0,0,0,0,<..\..\libcpu\arm\stm32\fault_rvds.S> +OPTFFF 4,45,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c> +OPTFFF 4,46,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c> +OPTFFF 4,47,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c> +OPTFFF 4,48,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_can.c> +OPTFFF 4,49,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_crc.c> +OPTFFF 4,50,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dac.c> +OPTFFF 4,51,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dbgmcu.c> +OPTFFF 4,52,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c> +OPTFFF 4,53,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c> +OPTFFF 4,54,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c> +OPTFFF 4,55,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_fsmc.c> +OPTFFF 4,56,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c> +OPTFFF 4,57,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c> +OPTFFF 4,58,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c> +OPTFFF 4,59,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_pwr.c> +OPTFFF 4,60,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c> +OPTFFF 4,61,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rtc.c> +OPTFFF 4,62,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c> +OPTFFF 4,63,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c> +OPTFFF 4,64,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_tim.c> +OPTFFF 4,65,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c> +OPTFFF 4,66,1,0,0,0,0,0,<.\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c> +OPTFFF 5,67,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\core_cm3.c> +OPTFFF 5,68,1,0,0,0,0,0,<.\Libraries\CMSIS\Core\CM3\system_stm32f10x.c> +OPTFFF 6,69,1,0,0,0,0,0,<..\..\finsh\finsh_compiler.c> +OPTFFF 6,70,1,0,0,0,0,0,<..\..\finsh\finsh_error.c> +OPTFFF 6,71,1,0,0,0,0,0,<..\..\finsh\finsh_heap.c> +OPTFFF 6,72,1,0,0,0,0,0,<..\..\finsh\finsh_init.c> +OPTFFF 6,73,1,0,0,0,0,0,<..\..\finsh\finsh_node.c> +OPTFFF 6,74,1,0,0,0,0,0,<..\..\finsh\finsh_ops.c> +OPTFFF 6,75,1,0,0,0,0,0,<..\..\finsh\finsh_parser.c> +OPTFFF 6,76,1,0,0,0,0,0,<..\..\finsh\finsh_token.c> +OPTFFF 6,77,1,0,0,0,0,0,<..\..\finsh\finsh_var.c> +OPTFFF 6,78,1,0,0,0,0,0,<..\..\finsh\finsh_vm.c> +OPTFFF 6,79,1,0,0,0,0,0,<..\..\finsh\shell.c> +OPTFFF 6,80,1,0,0,0,0,0,<..\..\finsh\symbol.c> +OPTFFF 6,81,1,0,0,0,0,0,<..\..\finsh\cmd.c> +OPTFFF 7,82,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_init.c> +OPTFFF 7,83,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_fs.c> +OPTFFF 7,84,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_raw.c> +OPTFFF 7,85,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_util.c> +OPTFFF 7,86,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_cache.c> +OPTFFF 7,87,1,0,0,0,0,0,<..\..\filesystem\dfs\src\dfs_posix.c> +OPTFFF 7,88,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\efs.c> +OPTFFF 7,89,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\extract.c> +OPTFFF 7,90,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\partition.c> +OPTFFF 7,91,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\base\plibc.c> +OPTFFF 7,92,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\dir.c> +OPTFFF 7,93,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\fat.c> +OPTFFF 7,94,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\file.c> +OPTFFF 7,95,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\fs.c> +OPTFFF 7,96,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\ls.c> +OPTFFF 7,97,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\time.c> +OPTFFF 7,98,1,0,0,0,0,0,<..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\ui.c> +OPTFFF 8,99,1,0,0,0,0,0,<..\..\net\lwip\src\core\dhcp.c> +OPTFFF 8,100,1,0,0,0,0,0,<..\..\net\lwip\src\core\dns.c> +OPTFFF 8,101,1,0,0,0,0,0,<..\..\net\lwip\src\core\init.c> +OPTFFF 8,102,1,0,0,0,0,0,<..\..\net\lwip\src\core\netif.c> +OPTFFF 8,103,1,0,0,0,0,0,<..\..\net\lwip\src\core\pbuf.c> +OPTFFF 8,104,1,0,0,0,0,0,<..\..\net\lwip\src\core\raw.c> +OPTFFF 8,105,1,0,0,0,0,0,<..\..\net\lwip\src\core\stats.c> +OPTFFF 8,106,1,0,0,0,0,0,<..\..\net\lwip\src\core\sys.c> +OPTFFF 8,107,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp.c> +OPTFFF 8,108,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_in.c> +OPTFFF 8,109,1,0,0,0,0,0,<..\..\net\lwip\src\core\tcp_out.c> +OPTFFF 8,110,1,0,0,0,0,0,<..\..\net\lwip\src\core\udp.c> +OPTFFF 8,111,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\autoip.c> +OPTFFF 8,112,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\icmp.c> +OPTFFF 8,113,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\igmp.c> +OPTFFF 8,114,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet.c> +OPTFFF 8,115,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\inet_chksum.c> +OPTFFF 8,116,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip.c> +OPTFFF 8,117,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_addr.c> +OPTFFF 8,118,1,0,0,0,0,0,<..\..\net\lwip\src\core\ipv4\ip_frag.c> +OPTFFF 8,119,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_in.c> +OPTFFF 8,120,1,0,0,0,0,0,<..\..\net\lwip\src\core\snmp\msg_out.c> +OPTFFF 8,121,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_lib.c> +OPTFFF 8,122,1,0,0,0,0,0,<..\..\net\lwip\src\api\api_msg.c> +OPTFFF 8,123,1,0,0,0,0,0,<..\..\net\lwip\src\api\err.c> +OPTFFF 8,124,1,0,0,0,0,0,<..\..\net\lwip\src\api\netbuf.c> +OPTFFF 8,125,1,0,0,0,0,0,<..\..\net\lwip\src\api\netdb.c> +OPTFFF 8,126,1,0,0,0,0,0,<..\..\net\lwip\src\api\netifapi.c> +OPTFFF 8,127,1,0,0,0,0,0,<..\..\net\lwip\src\api\tcpip.c> +OPTFFF 8,128,1,0,0,0,0,0,<..\..\net\lwip\src\netif\etharp.c> +OPTFFF 8,129,1,150994944,0,0,0,0,<..\..\net\lwip\src\netif\ethernetif.c> +OPTFFF 8,130,1,0,0,0,0,0,<..\..\net\lwip\src\netif\loopif.c> +OPTFFF 8,131,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch_init.c> +OPTFFF 8,132,1,0,0,0,0,0,<..\..\net\lwip\src\arch\sys_arch.c> +OPTFFF 8,133,1,0,0,0,0,0,<..\..\net\lwip\src\api\sockets.c> +OPTFFF 8,134,1,0,0,0,0,0,<..\..\net\lwip\src\core\memp_tiny.c> +OPTFFF 9,135,1,268435456,0,0,0,0,<.\mp3\mp3dec.c> +OPTFFF 9,136,1,0,0,0,0,0,<.\mp3\mp3tabs.c> +OPTFFF 9,137,1,0,0,0,0,0,<.\mp3\real\bitstream.c> +OPTFFF 9,138,1,83886080,0,0,0,0,<.\mp3\real\buffers.c> +OPTFFF 9,139,1,0,0,0,0,0,<.\mp3\real\dct32.c> +OPTFFF 9,140,1,0,0,0,0,0,<.\mp3\real\dequant.c> +OPTFFF 9,141,1,0,0,0,0,0,<.\mp3\real\dqchan.c> +OPTFFF 9,142,1,0,0,0,0,0,<.\mp3\real\huffman.c> +OPTFFF 9,143,1,0,0,0,0,0,<.\mp3\real\hufftabs.c> +OPTFFF 9,144,1,0,0,0,0,0,<.\mp3\real\imdct.c> +OPTFFF 9,145,1,0,0,0,0,0,<.\mp3\real\scalfact.c> +OPTFFF 9,146,1,0,0,0,0,0,<.\mp3\real\stproc.c> +OPTFFF 9,147,1,0,0,0,0,0,<.\mp3\real\subband.c> +OPTFFF 9,148,1,0,0,0,0,0,<.\mp3\real\trigtabs.c> +OPTFFF 9,149,2,0,0,0,0,0,<.\mp3\real\arm\asmpoly_thumb2.s> +OPTFFF 9,150,2,0,0,0,0,0,<.\mp3\real\arm\asmmisc.s> +OPTFFF 10,151,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_object.c> +OPTFFF 10,152,1,0,0,0,0,0,<..\..\rtgui\common\rtgui_system.c> +OPTFFF 10,153,1,335544320,0,0,0,0,<..\..\rtgui\common\rtgui_theme.c> +OPTFFF 10,154,1,0,0,0,0,0,<..\..\rtgui\common\asc12font.c> +OPTFFF 10,155,1,0,0,0,0,0,<..\..\rtgui\common\color.c> +OPTFFF 10,156,1,352321536,0,0,0,0,<..\..\rtgui\common\dc.c> +OPTFFF 10,157,1,0,0,0,0,0,<..\..\rtgui\common\dc_buffer.c> +OPTFFF 10,158,1,0,0,0,0,0,<..\..\rtgui\common\dc_hw.c> +OPTFFF 10,159,1,0,0,0,0,0,<..\..\rtgui\common\filerw.c> +OPTFFF 10,160,1,83886080,0,0,0,0,<..\..\rtgui\common\font.c> +OPTFFF 10,161,1,0,0,0,0,0,<..\..\rtgui\common\image.c> +OPTFFF 10,162,1,0,0,0,0,0,<..\..\rtgui\common\image_xpm.c> +OPTFFF 10,163,1,0,0,0,0,0,<..\..\rtgui\common\region.c> +OPTFFF 10,164,1,0,0,0,0,0,<..\..\rtgui\server\server.c> +OPTFFF 10,165,1,0,0,0,0,0,<..\..\rtgui\server\driver.c> +OPTFFF 10,166,1,0,0,0,0,0,<..\..\rtgui\server\panel.c> +OPTFFF 10,167,1,0,0,0,0,0,<..\..\rtgui\widgets\widget.c> +OPTFFF 10,168,1,0,0,0,0,0,<..\..\rtgui\widgets\window.c> +OPTFFF 10,169,1,0,0,0,0,0,<..\..\rtgui\widgets\workbench.c> +OPTFFF 10,170,1,0,0,0,0,0,<..\..\rtgui\widgets\view.c> +OPTFFF 10,171,1,0,0,0,0,0,<..\..\rtgui\widgets\box.c> +OPTFFF 10,172,1,0,0,0,0,0,<..\..\rtgui\widgets\button.c> +OPTFFF 10,173,1,0,0,0,0,0,<..\..\rtgui\widgets\container.c> +OPTFFF 10,174,1,0,0,0,0,0,<..\..\rtgui\widgets\iconbox.c> +OPTFFF 10,175,1,0,0,0,0,0,<..\..\rtgui\widgets\label.c> +OPTFFF 10,176,1,0,0,0,0,0,<..\..\rtgui\widgets\textbox.c> +OPTFFF 10,177,1,0,0,0,0,0,<..\..\rtgui\widgets\title.c> +OPTFFF 10,178,1,0,0,0,0,0,<..\..\rtgui\widgets\toplevel.c> +OPTFFF 10,179,1,0,0,0,0,0,<..\..\rtgui\server\mouse.c> +OPTFFF 10,180,1,0,0,0,0,0,<..\..\rtgui\server\topwin.c> +OPTFFF 10,181,1,0,0,0,0,0,<..\..\rtgui\common\caret.c> TARGOPT 1, (RT-Thread STM32 Radio) @@ -187,8 +220,7 @@ TARGOPT 1, (RT-Thread STM32 Radio) OPTKEY 0,(DLGTARM)((1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(100=-1,-1,-1,-1,0)(110=-1,-1,-1,-1,0)(111=-1,-1,-1,-1,0)(1011=-1,-1,-1,-1,0)(180=-1,-1,-1,-1,0)(120=-1,-1,-1,-1,0)(121=-1,-1,-1,-1,0)(122=-1,-1,-1,-1,0)(123=-1,-1,-1,-1,0)(124=-1,-1,-1,-1,0)(125=-1,-1,-1,-1,0)(126=-1,-1,-1,-1,0)(140=-1,-1,-1,-1,0)(240=-1,-1,-1,-1,0)(190=-1,-1,-1,-1,0)(200=-1,-1,-1,-1,0)(170=-1,-1,-1,-1,0)(130=-1,-1,-1,-1,0)(131=-1,-1,-1,-1,0)(132=-1,-1,-1,-1,0)(133=-1,-1,-1,-1,0)(160=-1,-1,-1,-1,0)(161=-1,-1,-1,-1,0)(162=-1,-1,-1,-1,0)(210=-1,-1,-1,-1,0)(211=-1,-1,-1,-1,0)(220=-1,-1,-1,-1,0)(221=-1,-1,-1,-1,0)(230=-1,-1,-1,-1,0)(231=-1,-1,-1,-1,0)(232=-1,-1,-1,-1,0)(233=-1,-1,-1,-1,0)(150=-1,-1,-1,-1,0)(151=-1,-1,-1,-1,0)) OPTKEY 0,(ARMDBGFLAGS)() OPTKEY 0,(DLGUARM)((105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0)) - OPTKEY 0,(JL2CM3)(-U11111117 -O718 -S8 -C0 -JU1 -JI127.0.0.1 -JP0 -N00("ARM CoreSight SW-DP") -D00(00000000) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO27 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000) - OPTWA 0,1,(addr) + OPTKEY 0,(JL2CM3)(-U20090110 -O718 -S8 -C0 -JU1 -JI127.0.0.1 -JP0 -N00("ARM CoreSight SW-DP") -D00(00000000) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO27 -FD20000000 -FC800 -FN1 -FF0STM32F10x_512 -FS08000000 -FL080000) OPTMM 1,2,(mp3_fd_buffer) OPTMM 2,8,(mimeBuffer) OPTDF 0x86 diff --git a/bsp/stm32_radio/project.Uv2 b/bsp/stm32_radio/project.Uv2 index 2a313a91e..7f7885b11 100644 --- a/bsp/stm32_radio/project.Uv2 +++ b/bsp/stm32_radio/project.Uv2 @@ -12,6 +12,7 @@ Group (finsh) Group (Filesystem) Group (LwIP) Group (mp3) +Group (RTGUI) File 1,5,<.\rtconfig.h> File 1,5,<.\board.h> @@ -35,6 +36,7 @@ File 1,1,<..\..\net\apps\udpecho.c> File 1,1,<.\mp3.c> File 1,1,<.\wav.c> File 1,1,<.\netbuffer.c> +File 1,1,<.\gui.c> File 2,1,<..\..\src\clock.c> File 2,1,<..\..\src\idle.c> File 2,1,<..\..\src\ipc.c> @@ -162,6 +164,37 @@ File 9,1,<.\mp3\real\subband.c> File 9,1,<.\mp3\real\trigtabs.c> File 9,2,<.\mp3\real\arm\asmpoly_thumb2.s> File 9,2,<.\mp3\real\arm\asmmisc.s> +File 10,1,<..\..\rtgui\common\rtgui_object.c> +File 10,1,<..\..\rtgui\common\rtgui_system.c> +File 10,1,<..\..\rtgui\common\rtgui_theme.c> +File 10,1,<..\..\rtgui\common\asc12font.c> +File 10,1,<..\..\rtgui\common\color.c> +File 10,1,<..\..\rtgui\common\dc.c> +File 10,1,<..\..\rtgui\common\dc_buffer.c> +File 10,1,<..\..\rtgui\common\dc_hw.c> +File 10,1,<..\..\rtgui\common\filerw.c> +File 10,1,<..\..\rtgui\common\font.c> +File 10,1,<..\..\rtgui\common\image.c> +File 10,1,<..\..\rtgui\common\image_xpm.c> +File 10,1,<..\..\rtgui\common\region.c> +File 10,1,<..\..\rtgui\server\server.c> +File 10,1,<..\..\rtgui\server\driver.c> +File 10,1,<..\..\rtgui\server\panel.c> +File 10,1,<..\..\rtgui\widgets\widget.c> +File 10,1,<..\..\rtgui\widgets\window.c> +File 10,1,<..\..\rtgui\widgets\workbench.c> +File 10,1,<..\..\rtgui\widgets\view.c> +File 10,1,<..\..\rtgui\widgets\box.c> +File 10,1,<..\..\rtgui\widgets\button.c> +File 10,1,<..\..\rtgui\widgets\container.c> +File 10,1,<..\..\rtgui\widgets\iconbox.c> +File 10,1,<..\..\rtgui\widgets\label.c> +File 10,1,<..\..\rtgui\widgets\textbox.c> +File 10,1,<..\..\rtgui\widgets\title.c> +File 10,1,<..\..\rtgui\widgets\toplevel.c> +File 10,1,<..\..\rtgui\server\mouse.c> +File 10,1,<..\..\rtgui\server\topwin.c> +File 10,1,<..\..\rtgui\common\caret.c> Options 1,0,0 // Target 'RT-Thread STM32 Radio' @@ -222,7 +255,7 @@ Options 1,0,0 // Target 'RT-Thread STM32 Radio' ADSCMISC () ADSCDEFN (USE_STDPERIPH_DRIVER, STM32F10X_HD,) ADSCUDEF () - ADSCINCD (.;.\Libraries\STM32F10x_StdPeriph_Driver\inc;.\Libraries\CMSIS\Core\CM3;..\..\include;..\..\libcpu\arm\stm32;..\..\finsh;..\..\net\lwip\src;..\..\net\lwip\src\include;..\..\net\lwip\src\arch\include;..\..\net\lwip\src\include\ipv4;..\..\filesystem\dfs;..\..\filesystem\dfs\include;..\..\filesystem\dfs\filesystems\efsl\src\include;..\..\filesystem\dfs\filesystems\efsl\src\base\include;..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\include) + ADSCINCD (.;.\Libraries\STM32F10x_StdPeriph_Driver\inc;.\Libraries\CMSIS\Core\CM3;..\..\include;..\..\libcpu\arm\stm32;..\..\finsh;..\..\net\lwip\src;..\..\net\lwip\src\include;..\..\net\lwip\src\arch\include;..\..\net\lwip\src\include\ipv4;..\..\filesystem\dfs;..\..\filesystem\dfs\include;..\..\filesystem\dfs\filesystems\efsl\src\include;..\..\filesystem\dfs\filesystems\efsl\src\base\include;..\..\filesystem\dfs\filesystems\efsl\src\fs\vfat\include;..\..\rtgui\include) ADSASFLG { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } ADSAMISC () ADSADEFN () @@ -276,3 +309,42 @@ Options 1,9,0 // Group 'mp3' ADSAINCD () EndOpt +Options 1,10,0 // Group 'RTGUI' + PropFld { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } + IncBld=2 + AlwaysBuild=2 + GenAsm=2 + AsmAsm=2 + PublicsOnly=2 + StopCode=11 + CustArgs () + LibMods () + ADSCCFLG { 2,84,85,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } + ADSCMISC (--gnu) + ADSCDEFN () + ADSCUDEF () + ADSCINCD () + ADSASFLG { 170,42,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } + ADSAMISC () + ADSADEFN () + ADSAUDEF () + ADSAINCD () +EndOpt + +Options 1,1,23 // File 'gui.c' + PropFld { 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } + IncBld=2 + AlwaysBuild=2 + GenAsm=2 + AsmAsm=2 + PublicsOnly=2 + StopCode=11 + CustArgs () + LibMods () + ADSCCFLG { 2,84,85,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 } + ADSCMISC (--gnu) + ADSCDEFN () + ADSCUDEF () + ADSCINCD () +EndOpt + diff --git a/bsp/stm32_radio/rtconfig.h b/bsp/stm32_radio/rtconfig.h index 706c44375..b0ea14db9 100644 --- a/bsp/stm32_radio/rtconfig.h +++ b/bsp/stm32_radio/rtconfig.h @@ -156,5 +156,6 @@ #define RT_LWIP_ETHTHREAD_MBOX_SIZE 4 #define RT_LWIP_ETHTHREAD_STACKSIZE 512 +#define RT_USING_RTGUI #endif