可可熊D窝

Keep it simple, stupid


  • 首页

  • 关于

  • 标签182

  • 分类8

  • 归档359

  • 搜索

硬盘安装了Fedora8

发表 2007-12-03 | 分类 Linux | 评论数:
| 字数: 874 | 阅读 ≈ 1 分钟

今天从硬盘安装了Fedora8(不刻DVD了,又费钱安装还慢),主要的原因是为了能使用SDL的全屏模式,结果安装完后和Fedora7一样,还是全屏后X马上重启,看来是白升级了,不过听说Fedora8对笔记本改进了不少,希望不会让我失望。

安装过程很简单,把下载的镜像文件中的isolinux这个文件夹提取出来和镜像文件放在一个空闲的分区(不可以安装在此分区上),重起后在grub的命令行下输入:

root (hd0,0)
kernel (hd0,0)/home/cocobear/isolinux/vmlinuz
initrd (hd0,0)/home/cocobear/initrd.img

这里(hd0,0)改为对应你自己的镜像文件所在分区。安装时速度快多了我从DVD安装得3个小时,硬盘安装1个小时就差不多了。

发现了一个超好的yum插件:yum-fastestmirror,也不知道是Fedora8中的yum更好了还是使用了这个插件的缘故,我yum安装mplayer等东西的时候速度超快,可以达到几百K的速度,爽啊!

根据这篇文章停掉了没用的服务,不过有一个服务有点奇怪“auditd”,看说明用处不是很大我就停掉了,没想到打开一个程序变得奇慢,只好重新开启,一切才正常。

Comments

crazyfranc: 你那里还有镜像吗?我也体验下。

wind: 终于装上了~~不容易阿你

cocobear: 我这里有镜像的,在硬盘上。 不过我是刚知道有这么一个东西:yum-fastestmirror

草儿: 晕死,那个yum-fastestmirror(寻找最快的源)最起码在Fedora6就有了,我只能无语了~ 不知道那天晚上停电前你的软件依赖关系解决没,呵呵~

cocobear: 笔记本装F8和XP不会有什么冲突,感觉F8对笔记本的改进还不错,速度和稳定性都有了一定的提高.

cocobear: 楼顶: F8感觉在我本本上快了一些,呵呵。

cnenc: 怎么你也玩F8了?

lala: 那个笔记本上装F8和XP有没有什么冲突,能起多大作用

昨天被忽悠了

发表 2007-11-30 | 分类 Life | 评论数: 0
| 字数: 551 | 阅读 ≈ 1 分钟

昨天中午去西电参加了深圳茁壮网络的招聘,因为很少有公司招聘的职位有两个都要求C语言还有Linux服务器的编程。宣讲的是公司老总,也是创始人,听了他一翻高谈阔论(我现在不得不用这个词来形容),我对这个人还有这个公司有产生了极大的兴趣,可以说是深信服后第二个让我看着不错的公司,无论是他对软件开发、用人之道、公司管理的见解我都很赞同,甚至有冲动如果新浪签我的话我还应该考虑下这个公司。

可惜的是笔试过后,面试时竟然因为我没带成绩单就不让进去面试,后来听同学说进去面试的人都是看了成绩单就直接决定签还是不签,怪不得我在外面等的时候每个人进去没多久就出来了。看来这老总也就是能忽悠人,说一套做一套,太让我失望了,中国的公司……

BTW:说实话那老总讲得确实不错,即使他是忽悠人,他讲的那些东西我还是受益不少,也不能算白跑一趟。

Comments

crazyfranc: 我最烦的不是那些不行的公司,而是披着羊皮卖猪肉的公司。深信服让我喜欢的一点是言行一致。

luguo: 这老总很白痴啊~~不去才是对的!!

Amankwah: 成绩单~~~ 晕倒~~~ 他们的用人标准也就这样了~ 没让你去面试是你的幸运。

Kermit: 咋都要成绩单呢?要是我去的话搞不好这些人能把俺大出来……

sk: 这样的公司 不去也好

SDL中使用点阵字库-续

发表 2007-11-30 | 分类 编程相关 | 评论数: 0
| 字数: 607 | 阅读 ≈ 1 分钟

前一篇文章提到的是SDL中的英文点阵显示,原理上汉字的显示也是相同的,不过由于汉字较多,有不同的编码方式,因此花了些时间写了GBK和UTF-8两种编码的点阵显示,网上有很多文章介绍SDL中显示GBK编码的汉字,基本上是按搬DOS下汉字显示的方式,我主要说一下Linux的UTF-8编码的汉字显示。

由于点阵字库的排序都是按照区位码的方式在HZK16这样的文件中保存,因此如果需要显示汉字必须先得到汉字的区位码,由于GBK编码的汉字转换区位码比较简单:

char *s = “中”;
区码:(unsigned char)s[0]-161;
位码:(unsigned char)s[1] - 161;

你至少得明白GBK编码的汉字是由两个字节组成。但是UTF-8与区位码之间的转换就比较麻烦,我到现在具体的实现还不清楚,大概就是先把UTF-8转换为GBK(使用查表的方式可能比较好),然后再由GBK转换为区位码。在网上找了好长时间只找到了VB的实现,看不懂就先用了Linux下的ivcon这个库来进行编码转换,这个库应该是一般Linux系统都有的吧,如果没有的话我还得考虑自己实现这个编码转换。

具体的代码我就不贴出来了,因为还不完善,谁有兴趣可以给我发邮件索取。

Comments

Amankwah: 最后还是用ivcon的库了,这个一般都有的吧。我估计所谓utf-8转GBK也就是查表了,想不出还有什么可以简化的关系。

SDL使用点阵字库

发表 2007-11-27 | 分类 编程相关 | 评论数: 0
| 字数: 1.8k | 阅读 ≈ 2 分钟

以前的文章中已经提到SDL是相对比较底层的一个开发库,因此需要自己手动写一些比较常用的功能库,前段时间完成了绘图库,这两天写程序时突然发现我还需要一个显示字符的函数,在SDL邮件列表里问了一下,大家的回答都是使用一个bmp的图像文件,把ASCII码的可见字符存在这幅图片中,然后读取图片中的信息,但这样不能灵活的控制字符的大小、颜色,那应该怎么办呢?点阵字库,就是这个东西,以前做DOS下的游戏时也接触到过比较熟悉,只是在寻找字库时花了好大功夫,最后还是从DOS98系统中找到了asc16这个ASCII的点阵字库文件。这个字库的大小是16x8,还有些点阵字库的生成程序但都需要注册不然只能生成最大16x16的字库,郁闷,有时间我自己研究下这个字库生成,写个Linux下的。

当然SDL还有相应的SDL_ttf可以使用,不过如果你对画面中字体要求不是很高的话没必要使用的。

我简单的说一下ASC16这个字库的使用:

unsigned char match[16];> 
        FILE *ASC;> 
        unsigned char temp = 0x80;> 
        unsigned int addr  = 0; /*offset of a character*/> 
        int x1 = x;> 
        int y1 = y;> 

        if (size == 16) {> 
                ;> 
        }> 
        if ((ASC = fopen("ASC16","rb")) == NULL) {> 
                fprintf(stderr,"Open ASC16 error!\n");> 
                return -1;> 
        }> 
        addr = c < < 4;/*设置读取偏移量,offset = 字符的ascii值x16 + 字库首地址(一般为0);*/> 
        fseek(ASC,addr,SEEK_SET);> 
        fread(match,16,1,ASC);/*每次读一个16bytes大小的块,ASC16中每个字符所使用的空间大小是16bytes*/> 
        for(int i = 0;i&lt;16;i++)> 
        {> 
                if (i > 0){> 
                        x = x1;> 
                        y++;> 
                }> 

                temp = 0x80;/*二进制的10000000*/> 
                for(int k = 0; k < 8; k++)> 
                {> 
                        if (match[i] & temp) {> 
                                Draw_Pixel(surface,x,y,color);/*当这一位为1时在此处显示一点*/> 
                                x++;> 
                        }> 
                        else {> 
                                x++;> 
                        }> 
                        temp = temp>>1;/*右移,比较下一位*/> 
                }> 
        }

Comments

crazyfranc: 感觉挺好的啊。

Python学习笔记五

发表 2007-11-22 | 分类 编程相关 | 评论数: 0
| 字数: 1.8k | 阅读 ≈ 2 分钟

高效的使用Python:
(Mon,Tue,Wed,Thu,Fri,Sat,Sun) = range(7)
Mon
0
Sun
6
比C语言里使用enum来实现要直观、简单多了吧!

 li = [1, 9, 8, 4]
 [elem*2 for elem in li]      
[2, 18, 16, 8]

可以从右至左的看这个表达式!

 params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}
 params.items()
[('server', 'mpilgrim'), ('uid', 'sa'), ('database', 'master'), ('pwd', 'secret')]
["%s=%s" % (k, v) for k, v in params.items()] 
['server=mpilgrim', 'uid=sa', 'database=master', 'pwd=secret']

这个例子与上面的例子有点类似,只是更复杂了一些,Dictionary的items操作会返回一个由Tuple组成的List,可从第二、三行代码看出,然后再结合上面例子中给出的方法就可以实现这个快速、简单的解析。
Dictionary还有keys,values两个操作,它们都返回一个List。

def info(object, spacing=10, collapse=1):
上面这个函数定义,如果在C++里想在调用info函数时对第一个参数与第三个参数使用给定的值,是无法做到的,而在Python里则可以,比起C++里的重载更灵活!

info(collapse=15, object=odbchelper)
说白了Python里的参数只不过是个Dictionary

'' and 'b'  
''
'a' and 'b' and 'c'
'c'

如果某个值为假,则 and 返回第一个假值;
所有值都为真,所以 and 返回最后一个真值,’c’。

 'a' or 'b'          
'a'
 '' or 'b'  

如果有一个值为真,or 立刻返回该值;
如果所有的值都为假,or 返回最后一个假值。

a = "first"
b = "second"
1 and a or b 
'first'
0 and a or b 
'second'

上面这个例子是不是有点类似C语言中的三元运算呢?

Comments

luguo: Python还能写2

luguo: -_-b 怎么小于号后面的都显示不出来?!留言居然不能转换大于小于号~~

cocobear: 应该是被过滤掉了,这种字符比较敏感。

Kermit: # luguo: 于07年11月23日 13点44分 辛苦敲键盘: -_-b 怎么小于号后面的都显示不出来?!留言居然不能转换大于小于号~~ 貌似很多blog都这样,呵呵。用个html的转义字符就行了。 我一般都在openoffice里把blog写好,再调整字体,存到html文件里,然后把源码复制到blog中,这样就可以有彩色的blog了,哈哈

Amankwah: 这样:>?

cocobear: 楼上写blog好麻烦啊。要是我的机子你写个blog得多久啊!

vvoody: 嘿嘿,三元运算不错,谢谢 ;-)

1…343536…72
cocobear

cocobear

爱折腾的技术宅一枚

359 日志
8 分类
182 标签
RSS
GitHub E-Mail Twitter 豆瓣
友情链接
  • 王聪
  • 老大
0%
© 2007 – 2020 cocobear | 521k | 7:54
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Gemini v6.7.0
Hosted by GitHub Pages
48849 55973