星期四, 5月 17, 2007

[HowTo] FreeBSD console framebuffer

First thing we have to do is add VESA and SC_PIXEL_MODE to the kernel and rebuild. You should always cvsup and rebuild your kernel and world to the latest available. However, don't try to 'optimize' the BSD kernel. It is already well optimized. If there is an option, like this, that you need to have, then go for it. We need to open the kernel config file. I would recommend that you cvsup first so that you rebuild the latest world/kernel, but it's optional.
cvsup -h cvsup2.freebsd.org -g -L 2 /usr/share/examples/cvsup/standard-supfile
Obviously, you can use whichever cvsup server you want. You can install fastest_cvsup to fins what server is fastest for your location as well. If this is the first time you are cvsup-ing, it will take some time. When it completes, we will continue.
cp /usr/src/sys/i386/conf/GENERIC /usr/src/sys/i386/conf/GENERICVESA
Name it to whatever you want.
vi /usr/src/sys/i386/conf/GENERICVESA
You will see, a couple of lines down an "ident GENERIC" line. You can change this if you want. It will be the display of the kernel in uname.

Directly after that, you will start to see 'option xxxxx #Description' sections..

This is where we add our options:
options VESA
options SC_PIXEL_MODE

Save your changes and exit.

From here, you generally build the world, and the kernel, install the kernel, reboot to single-user mode, mergemaster, installworld, etc... but I'm going to skip the buildworld because it will eat up a lot of time, and we can do it after the kernel.
cd /usr/src
make buildkernel KERNCONF=GENERICVESA
make installkernel KERNCONF=GENERICVESA
reboot
Now, you won't get the resolution just yet, we're not quite done. Boot back up and do the following:
kldload vesa
vidcontrol -i mode | less
You should see a punch of different modes. Scroll through and find one you'd like. For me, 1024x768x24 is the size I want. The first column shows the mode number, mine being 280.

Choose the one you want and try:
vidcontrol MODE_xxx
Substituting "xxx" for the number of the mode you want. The screen will go bank for a second, then it should come back with the prompt. If it cannot handle the resolution you specified, it should return with an error.

If it works, GREAT! Now we can add this to /etc/rc.conf to load on boot-up. However, we must make sure we load vesa on boot-up as well.
vi /boot/loader.conf
add the line :
vesa_load="NO"
change it to "YES" (maintaining caps)

Save, and exit.
vi /etc/rc.conf
and add to the end:
allscreens_flags="MODE_xxx"

星期三, 5月 16, 2007

網球終於有點Sense了

這學期選的透早網球課,終於有點收獲了.
雖然只是對牆打,但也抓到了一些輕鬆打的感覺。

今天的心得是.... 收拍要快,下一次揮拍擊球時,才能在身體的前方(90度半圓)的球點擊球。
多旋轉身體,會打得又遠又輕鬆。(這可以靠調整後拉拍的深度達到)
還有擊球後,手部的推出送球動作,也要注意。(推球動作能穩定你的球路)

ps. 當你總覺得擊球不順時,滿有可能是收拍太慢,使得下一次的擊球點,在身體的內側。
試著在擊球後,喊「後拉」、「拉」等字眼,提醒自己收拍,調整收拍的節奏。