Board logo

标题: 启动界面:640X480X24真彩背景+gif动画的实现 [打印本页]

作者: tyhee    时间: 2006-9-5 12:00     标题: 启动界面:640X480X24真彩背景+gif动画的实现

先发几张图片,看下效果:
作者: tyhee    时间: 2006-9-5 12:04

cdshell支持真彩背景,bcdw支持gif动画。所以用cdshell+bcdw模块实现了上面的效果。
下面是cdshell.ini文件的内容:
boot:
cls
print "\n"
print "Press Enter to boot from CD... \n"
getkey 5 boot 0x80
if $lastKey == key[enter]; then goto menu
# When no key found...
goto boot

menu:
show image menu.csi

i01_active:
bcdw ShowGif arrow_a.gif 56 80 WaitKey
bcdw ShowGif arrow_p.gif 56 80
if $BCDW_LastKey == key[up]; then goto i09_active
if $BCDW_LastKey == key[down]; then goto i02_active
if $BCDW_LastKey == key[enter]; then chain /PRO1.DAT
if $BCDW_LastKey == key[1]; then chain /PRO1.DAT
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i01_active

i02_active:
bcdw ShowGif arrow_a.gif 56 122 WaitKey
bcdw ShowGif arrow_p.gif 56 122
if $BCDW_LastKey == key[up]; then goto i01_active
if $BCDW_LastKey == key[down]; then goto i03_active
if $BCDW_LastKey == key[enter]; then memdisk /PMagic.img
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then memdisk /PMagic.img
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i02_active

i03_active:
bcdw ShowGif arrow_a.gif 56 164 WaitKey
bcdw ShowGif arrow_p.gif 56 164
if $BCDW_LastKey == key[up]; then goto i02_active
if $BCDW_LastKey == key[down]; then goto i04_active
if $BCDW_LastKey == key[enter]; then memdisk /ghost.img
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then memdisk /ghost.img
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i03_active

i04_active:
bcdw ShowGif arrow_a.gif 56 206 WaitKey
bcdw ShowGif arrow_p.gif 56 206
if $BCDW_LastKey == key[up]; then goto i03_active
if $BCDW_LastKey == key[down]; then goto i05_active
if $BCDW_LastKey == key[enter]; then memdisk /xiao.img
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then memdisk /xiao.img
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i04_active

i05_active:
bcdw ShowGif arrow_a.gif 56 248 WaitKey
bcdw ShowGif arrow_p.gif 56 248
if $BCDW_LastKey == key[up]; then goto i04_active
if $BCDW_LastKey == key[down]; then goto i06_active
if $BCDW_LastKey == key[enter]; then chain /XPE1.DAT
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then chain /XPE1.DAT
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i05_active

i06_active:
bcdw ShowGif arrow_a.gif 56 290 WaitKey
bcdw ShowGif arrow_p.gif 56 290
if $BCDW_LastKey == key[up]; then goto i05_active
if $BCDW_LastKey == key[down]; then goto i08_active
if $BCDW_LastKey == key[enter]; then chain /XPE2.DAT
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then chain /XPE2.DAT
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i06_active

i08_active:
bcdw ShowGif cross_a.gif 56 354 WaitKey
bcdw ShowGif cross_p.gif 56 354
if $BCDW_LastKey == key[up]; then goto i06_active
if $BCDW_LastKey == key[down]; then goto i09_active
if $BCDW_LastKey == key[enter]; then boot 0x80
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto boot 0x80
if $BCDW_LastKey == key[esc]; then reboot
goto i08_active

i09_active:
bcdw ShowGif cross_a.gif 56 396 WaitKey
bcdw ShowGif cross_p.gif 56 396
if $BCDW_LastKey == key[up]; then goto i08_active
if $BCDW_LastKey == key[down]; then goto i01_active
if $BCDW_LastKey == key[enter]; then reboot
if $BCDW_LastKey == key[1]; then goto i01_active
if $BCDW_LastKey == key[2]; then goto i02_active
if $BCDW_LastKey == key[3]; then goto i03_active
if $BCDW_LastKey == key[4]; then goto i04_active
if $BCDW_LastKey == key[5]; then goto i05_active
if $BCDW_LastKey == key[6]; then goto i06_active
if $BCDW_LastKey == key[8]; then goto i08_active
if $BCDW_LastKey == key[esc]; then reboot
goto i08_active

goto menu

end
作者: luyi18899    时间: 2006-9-5 15:09

很好我做GHOST文件很大怎么办
作者: luyi18899    时间: 2006-9-5 15:10

很好我做GHOST文件很大怎么办
作者: luyi18899    时间: 2006-9-5 15:15

很好我做GHOST文件很大怎么办
作者: xingjun6075    时间: 2006-9-15 20:20

为什么我都看不到图




欢迎光临 EZB 论坛 (http://ultraiso.net/ezbbbs/) Powered by Discuz! 6.1.0