31 мар. 2009 г.

Nefor II: War of Kalinborn. Postrelease.

Некрофилия, да..
Тем не менее, игрушка была весёлая, хоть и чрезвычайно глючная.

Краткая история болезни:
Нефор 2 - некое подобие RPG, нагло использующая систему SPECIAL.
Собственно вся игра востоит из заимствований из Fallout, Diablo, NWN, а в поздней версии, которую я успешно потерял, боевая система содрана с Fahrenheit ) и конечно же текстовой игры GOPNIK, которую я выложу позже.

Написано это чудо на Visual Basic. И это всё таки закрытое ПО, по простой причине - код просто стыдно показывать, я вообще далеко не хороший программист, а в далеком 2005-2006 году был вообще пипец))

Скриншоты:





Скачать сие чудо можно с моего drop.io

В архив также входит дев-билд Нефора 1 - еще более эпической игры))

Да, вот еще, Credits:
Идея и сюжет - Николай [veo] Хозеев
Тестирование и всяческая помощь - Иван [Vik Mefisto] Ефремов
Поддержка - Анна Бородай, Ирина Ступина, Антон Алексеев.
Программизм - Виктор [m0nochr0me] Терещенко

ЗЫ: будте внимательны при открытии html-документов из архива - к некоторым из них прицепился вредный iframe.

26 мар. 2009 г.

Кулер для ноутбука своими руками

Близится лето. И это чувствуется даже у нас, и даже в марте - температура в нашей комнатушке 7х5, где стоят и работают два сервака и 6 обычных компов приближается к критически-некомфортной, несмотря на работающий кондиционер..
А тут еще и мой алюминиевый ноут с чуть-ли не нулевым охлаждением :)

Немного помозговав, я решил сделать для него внешнее охлаждение.
Собственно, вот что получилось:







Пока это всего лишь рабочая модель, не более. Если эффективность будет подтверждена то займусь более серьёзно.

В создании использовались материалы:
  • Кулер типолразмера 92мм
  • 2 листа А4
  • Обрезок неэкранированной витой пары длинной 1.5 метра
  • Молекс типа "папа"
Питание берется от стационарного компа за соседним столом, именно поэтому используется витуха - по 2 пары скручены на +12 и GND.

Приблизительная эффективность по результатам получаса работы - средняя -
правая половина корпуса холодная(впрочем такая она и была), левая - теплая, хоть и менее чем была.

Недостатки конструкции:
  • Хрупкость - бумага далеко не самый надежный материал.
  • Возможность засасывания посторонних предметов - "паутинки" на 92мм у меня не оказалось и мой волшебный пылесос чуть было не высосал пакетик чая из моей кружки :)
  • Отсутствие функции "вкл/выкл" - исключительно мой косяк ><
  • Блокируется доступ к портам на правой стороне корпуса.
  • Незначительный шум.
  • Малая совместимость с другими ноутбуками, по крайней мере с ASUS F5R точно. Возможно придется изобретать сменные насадки.
ЗЫ: Если кому интересно - нарисую в гимпе развертку.

6 мар. 2009 г.

Скрипт проверки баланса на БВК

Всвязи с переходом на CDMA-интернет в качестве основного, снова возникла необходимость следить за состоянием баланса.

Около полугода назад я было взялся сам писать такой скрипт на питоне, знаний не хватило. А сегодня нашел уже готовый в интернете. Лёгкий взмах напильником и он даже заработал :)

Собственно вот.

#!/usr/bin/perl -w
#############################################################
##
## BWC (http://www.bwc.ru) balance checker
## by Qwadrat, qwadrat@gmail.com
## Modified by M0nochr0me, m0nochr0mex@gmail.com
##
#############################################################


use strict;
use warnings;
use LWP;

my $prefix='902'; #код
my $phone='1234567'; #7 цифр телефона
my $passwd='xxxx'; # пароль на issa.bwc.ru
my $agent = LWP::UserAgent->new;
my $url = 'http://issa.bwc.ru/cgi-bin/cgi.exe?function=is_login';
$agent->cookie_jar({});
my $response = $agent->post($url,
[ 'mobnum' => $prefix.$phone,
'Password' => $passwd
]
);
die "$url error: ", $response->status_line
unless $response->is_success;
$response = $agent->get("http://issa.bwc.ru/cgi-bin/cgi.exe?function=is_account");
$response->content =~ /<td class=light width="50%">&nbsp;<em>(.+?)<\/em>&nbsp;/;
my $rc = (defined $1)?($1):("**.**");
print "Актуальный баланс: ", $rc, "руб.\n";
$response->content =~ /(cgi-bin\/cgi.exe?function=is_exit)\"/;
$response = $agent->get("http://issa.bwc.ru");


Чтобы оно заработало нужно поставить пакет perl-libwww, по крайней мере в арче.

PS: кое как этот код сюда упихнул без парсинга >_<



Update 23/11/2009:

Обновленные скрипты: на питоне и на перле.
Для перлового варианта нужно будет доустановить пакет libcrypt-ssleay-perl.

Спасибо Александру, заметившиму ошибку.

16 февр. 2009 г.

HP 2133 pt.2 Настройка видео.

Настройка видеодрайверов в линуксе(кроме убунты) не очень тривиальная, но вполне решаемая задача.

Для начала следует скачать пару архивов с офсайта VIA.

2D source code for 83-242 driver(29Aug08) (723.2K)
Chrome9 DRM source for kernel 2.6.27(12Dec08) (31.2K)

Сборка самого драйвера(полностью описана в readme):
$ tar zxvf chrome.83-242-2d-src.tar.gz
$ cd ./xf86-video-via-83.1.0/X11R7
$ chmod +x config_x11r7
$ chmod +x autogen.sh
$ chmod +x configure
$ ./config_x11r7
$ ./autogen.sh   
$ make
# make install

Теперь собираем DRM модуль:
$ tar zxvf drm-via_chrome9-2.6.27-85a-44411-src.tar.gz
$ cd drm-via_chrome9-2.6.27-85a-44411-src
$ make
# mkdir -p /lib/modules/'uname -r'/kernel/viachrome
# cp -v ./via_chrome9.ko /lib/modules/'uname -r'/kernel/viachrome
# depmod -a
# modprobe via_chrome9

Смотрим что у нас получилось:
$ lsmod | grep via
via_chrome9        28300  2
drm                       82856  3 via_chrome9
i2c_viapro             11668  0
via_agp                 12160  1
agpgart                 32840  2 drm,via_agp

Теперь можно заняться конфигом иксов.
# /etc/X11/xorg.conf  for  hp Mini-Note 2133    FU339EA  ubuntu 8.10
#         with ubuntu 8.04 change the PanelID option
# based on the xorg.conf published on http://hp2133.umsw.de/xorg.conf

Section "Files"
    FontPath    "/usr/share/fonts/misc"
    FontPath    "/usr/share/fonts/TTF"
    RgbPath        "/usr/share/X11/rgb"
    ModulePath    "/usr/lib/xorg/modules"
    inputDevices    "/dev/input/mice"
EndSection

Section "Module"
    Load     "glx"
    Load    "dbe"
    Load    "dri"
    Load    "freetype"
    Load    "synaptics" 

   Load    "extmod"
   Load    "v4l"
EndSection
 
Section "Device"
    Identifier       "Device 0"  
    Driver           "via"
    VendorName       "VIA Technology"
#   BusID        "PCI:1:0:0"
      Option         "NoDDCValue"
      Option         "ActiveDevice"        "LCD"         
      Option         "PanelID"              "17"             #  si ubuntu 8.04  
#   Option         "PanelID"              "9"               # si ubuntu 8.10  
      Option          "ForceLCD"         "TRUE" 
      Option         "Refresh"         "60"
#   Option         "LCDPort"         "DFP_HIGHLOW"
#   Option        "AccelMethod"        "XAA"
EndSection
 
Section "Monitor"
     Identifier   "Monitor 0"
     DisplaySize  196 116      
     HorizSync    28-50            
     VertRefresh  43-60           
     Option       "DPMS"
    #  mode "1024x600": 49.0 MHz, 37.3 kHz, 60.0 Hz
     Modeline "1024x600_60"   48.96  1024 1064 1168 1312  600 601 604 622 -hsync +vsync  # http://hp2133.umsw.de/xorg.conf
    #  mode "800x600": 40.0 MHz, 37.9 kHz, 60.3 Hz
    Modeline "800x600_60"   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync
    #  mode "800x600": 36.0 MHz, 35.2 kHz, 56.2 Hz
    Modeline "800x600_56"   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync
    #  mode "800x480": 40.0 MHz, 37.9 kHz, 60.3 Hz
    Modeline "800x480_60"   40.00  800 832 960 1056  480 541 545 628 -hsync +vsync
    #  mode "720x576": 32.7 MHz, 35.9 kHz, 60.1 Hz
    Modeline "720x576_60"   32.70  720 744 816 912  576 577 580 597 -hsync +vsync
EndSection
 
Section "Screen"  
Identifier   "Screen 0"
    Option "XAANoOffscreenPixmaps"
    DefaultDepth 24 
    SubSection "Display"
        Depth    24 
        Modes     "1024x600_60" "800x600_60" "800x600_56" "800x480_60" "720x576_60"
    EndSubSection
    SubSection "Display"
        Depth    32 
        Modes     "1024x600_60" "800x600_60" "800x600_56" "800x480_60" "720x576_60"
    EndSubSection
    Device       "Device 0"
    Monitor      "Monitor 0"
EndSection
 
Section        "InputDevice"
  Identifier  "Keyboard1"
  Driver      "keyboard"
  Option      "CoreKeyboard"
  Option      "XkbRules"  "xorg"
  Option      "XkbModel"  "pc105"
  Option      "XkbLayout" "us,ru(winkeys)"
  Option "XkbOptions"    "grp:alt_shift_toggle"
EndSection
 
Section "InputDevice"
Identifier "Touchpad"
Driver "synaptics"
Option "Buttons" "5"
Option "Device" "/dev/input/mice"
Option "Emulate3Buttons" "on"
Option "InputFashion" "Mouse"
Option "Name" "Synaptics Touchpad"
Option "Protocol" "explorerps/2"
Option "SHMConfig" "on" # GUI setting access
Option "ZAxisMapping" "4 5"
EndSection 
 
Section "Monitor"
     Identifier    "External"
    Option        "DPMS"
EndSection
 
 
Section "ServerLayout"
    Identifier    "Default Layout"
    Screen        "Screen 0"
#    Screen       "Screen 1"
    InputDevice   "Keyboard1"
    InputDevice   "Touchpad"    "SendCoreEvents"
    Option        "RandR" "False"      # d' apres viax.conf  via
    Option        "AIGLX"
EndSection
 
Section "DRI"
    Mode 0666
EndSection
 
Section "Extensions"
    Option "Composite" "enable"
EndSection

Мой конфиг конечно далеко не идеален, и подходит только для моделей с разрешением экрана 1024х600..

Всё, не забываем добавить в конфиги автозагрузку нужного модуля.
Перезапускаем иксы и смотрим что получилось:
$ glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: S3/VIA Graphics Chrome9 HC IGP

Несколько замечаний:
  • Прокрутка на тачпаде с моим конфигом не работает. Пока не знаю почему.
  • При неправильной конфигурации иксов очень возможны графические и  даже звуковые(!!) артефакты(высокачастотный свист из корпуса О_о)
  • Openchrome тоже работает, причем настраивать его гораздо легче, только вот DRMа там нет(или я просто плохо искал)
  • При других разрешениях экрана необходимо править Modeline и PanelID в конфиге иксов

14 февр. 2009 г.

HP 2133 pt.1

Наконец то я достаточно причесал линукс на этом ноуте чтобы отправлять посты в блог.
История этого причесывания достаточно долгая, и в какой то мере даже эпическая :) И надо будет однако написать попозже об установке видеодрайверов..
Пока же просто пачка картинок.

 
Собственно сам ноут

Стандартный десктоп XFCE4

ROXTerm

Thunar

 
Mozilla Firefox 3
Тема GTK - Mist (используется модифицированый gtkrc с лора)
Тема XFWM - BBS
Дистр - Slackware 12.2 
Ядро - 2.6.28.4