diff --git a/bsp/x86/Makefile b/bsp/x86/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..7e814fb42ef56900ef5a8ba09ae06605f28178b6 --- /dev/null +++ b/bsp/x86/Makefile @@ -0,0 +1,16 @@ + +all:floppy.img + scons + mkdir -p tmp + sudo mount -t vfat floppy.img tmp -o loop + sudo cp rtthread.elf tmp/boot/oskernel + sudo umount tmp + +clean: + scons -c clean + +floppy.img: + wget https://github.com/bajdcc/tinix/raw/master/floppy.img + +run: + qemu-system-i386 -fda floppy.img -boot a -m 64M diff --git a/bsp/x86/drivers/board.c b/bsp/x86/drivers/board.c index 29589b0712ac97e39c678e7bfcc2f9d252bf2314..4d91604ab327c53139dd328467b61056521e2c8d 100644 --- a/bsp/x86/drivers/board.c +++ b/bsp/x86/drivers/board.c @@ -71,5 +71,12 @@ void reboot(void) } FINSH_FUNCTION_EXPORT(reboot, reboot PC) #endif - +#ifdef RT_USING_DFS +#include +time_t time(time_t* tm) +{ + (void)tm; + return 0; +} +#endif /*@}*/ diff --git a/bsp/x86/rtconfig.py b/bsp/x86/rtconfig.py index 98199699245b27effd5247f4e3484b6d9e968b18..e99ddfe3242dc07f1db4302e2af513f64aadc970 100644 --- a/bsp/x86/rtconfig.py +++ b/bsp/x86/rtconfig.py @@ -32,20 +32,20 @@ BUILD = 'debug' if PLATFORM == 'gcc': # toolchains - PREFIX = 'i686-elf-' - CC = PREFIX + 'gcc' - AS = PREFIX + 'gcc' + PREFIX = '' + CC = PREFIX + 'gcc -m32 -fno-builtin -fno-stack-protector' + AS = PREFIX + 'gcc -m32' AR = PREFIX + 'ar' - LINK = PREFIX + 'gcc' + LINK = PREFIX + 'ld -melf_i386' TARGET_EXT = 'elf' SIZE = PREFIX + 'size' OBJDUMP = PREFIX + 'objdump' OBJCPY = PREFIX + 'objcopy' - DEVICE = ' -mtune=generic' + DEVICE = '' CFLAGS = DEVICE + ' -Wall' AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp' - LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread-ia32.map,-cref,-u,_start -T x86_ram.lds -nostdlib' + LFLAGS = DEVICE + ' -Map rtthread-ia32.map -T x86_ram.lds -nostdlib' CPATH = '' LPATH = ''