Showing posts from February, 2013

BZFlag on GMA900 of Eee PC is playable with a trick

Runs very nice, at about 30-40 FPS on laser sniping, but only when the settings are adjusted correctly! Out of box experience is garbage, performing something between 5 to 10 FPS on a random map, but of course a lot depends on the specific map. After going through hoops of tweaking, I went as far as uninstalling the game and completely giving up.

That was until recently, as on second thought, I simply couldn't believe that such simple polygon graphics advertised to support legacy PC's chokes on a 3D accelerator. I gave it another try, and as how it generally goes, your calm mind works much better on the same problem after having left it get organized by your brain subconsciously over time.

All in all, after literally toggling every option available from the GUI, I had to conclude that it wasn't the 3D effects which were holding back the computer or even the antialiased radar map in the corner - it was the overlayed bitmapped text! At first I couldn't believe my eyes, b…

Raincat, the incredible Haskell physics game

It was developed by CMU students, inspired by TIM, The Incredible Machine.

Here's a short video clip of the cute game mechanics.

I've discovered this pearl when browsing the Open Source Versions of The Incredible Machine wiki at project Butterfly Effect.

My new ultra-silent & ultra cool 1TB drive

Some years ago, I've found a few bad sectors on my WD10EARS Caviar Green drive not too long after purchasing, but I decided to simply partition around it. Actually, I can't remember now when that was, but I've either used up a major part of the disk and had nowhere to back up everything by then, or I've deliberately planned to extend the warranty by a replacement... The original purchase came standard with 3 years of warranty.

The drive didn't store too precious data in general, but no attention was given to the issue for years. The fault seemed to propagate by a few dozen bad sectors over the allocated 1GB margin, injecting a few macroblock errors to 5 of my unimportant home recordings. Actually this spreading was really slow, as occasional slowdowns were indeed experienced when randomly accessing some of the files in the past, but the fix was never a priority.

For serious use, I'd like to point out the importance of data scrubbing for protecting against bit …

Sound over network for your thin clients

Using Lubuntu 12.04 for connections to icewm on Ubuntu 12.04. The exact configuration involves hosting a pulse sound server on each thin client, and configuring applications on the remote desktop to pipe back sound to the respective thin client. A trusted environment is assumed here, so please refer to the PulseAudio Network documentation on and various general security guidelines (firewalls, tunnels, IPsec, VPN, etc.) if you're planning anything serious. Thin client setup:
Purge any left over configuration: rm -Ri ~/.pulseInstall PulseAudio: sudo apt-get install pulseaudio dbus-x11Enable local sound access (not sure if needed): sudo adduser $USER pulse; sudo adduser $USER pulse-access then log out and log in againGive local and network access to the sound: cp -t ~/.pulse/ /etc/pulse/ # APPIP="type application server IP address here" echo "load-module module-native-protocol-tcp auth-ip-acl=;$APPIP/32" >> ~/.pulse/de…

Ergonomy - provide editing context

A good rule of thum is to always provide proper context for the user.

In case of a text editor, it's the de facto standard to only scroll the screen when the text cursor would leave the visible window. However, consider the use case of composing an answer to a letter. It feels more comfortable to be able to read a bit ahead, as well as back in this case.

Toggling full screen via scroll lock was a working strategy in the past, though only a few editors support it, and nowadays less and less keyboards have a button for it...

There exist another breed of editors which, on automatic page scroll, advance only a small proportion of the editing window at a time.

A third possible implementation would scroll in such a way as to always position the cursor in the middle of the editing window. I have constructed a few prototypes on this paradigm way back in primary school which worked nicely to me.

Huawei E3131S-2 on Ubuntu 12.04 with wvdial

It works out of the box with a plain wvdial after a small adjustment (need to erase the +FCLASS=0 part). It is detected as the following device (after the automatic mode switch):

ID 12d1:1506 Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/Networkcard

For the record, I paste the wvdial.conf configured for T-Mobile in Hungary:

[Dialer Defaults] Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Init3 = AT+CGDCONT=1,"IP","internet" Modem = /dev/ttyUSB0 Username = wap Password = wap Modem Type = Analog Modem Baud = 9600 New PPPD = yes ISDN = 0 Phone = *99# Stupid Mode = 1
Most of the settings are not crucial, but some of them depend on your carrier, like "Init3", "Username" and "Password", while "Modem" depends on your device.