Flashing the PC Weasel PCI

I recently purchased a PC Weasel PCI card off eBay. While I’m having trouble getting the thing to run as I wish in my fileserver it does indeed work fine on my bare-metal test computer. One thing that bugged me a lot was the process of flashing firmware onto the PC Weasel. It supports up to 7 different firmware partitions but flashing them from command line is a real pain and with my limited knowledge of kermit and minicom I was totally dumbfounded.

Thankfully SecureCRT is always a viable option for one’s console needs (when using Windows, that is). PuTTY is cool but SecureCRT is great – it allows for massive scripting and is even recommended in the PC Weasel manual. So I did some scripting and this is the result:

[code language=”vb”]
# $language = "VBScript"
# $interface = "1.0"

‘ ****************************************************
‘ * *
‘ * PC WEASEL PCI FLASH HELPER FOR SECURECRT *
‘ * *
‘ * written by Tsukasa *
‘ * for SecureCRT 6.6.0 *
‘ * *
‘ * INSTRUCTIONS: Set the jumper for safeboot, open *
‘ * a serial connection through SCRT, *
‘ * run the script and power on the *
‘ * target machine. *
‘ * Cancel the script as soon as the *
‘ * S19-line input is done and set the *
‘ * remaining options manually. *
‘ * *
‘ ****************************************************

‘ ##### Edit the 3 values below ##### ‘

Const FirmwareFile = "PCIweasel_2.07_s19"
Const FirmwareName = "PC Weasel v2.07"
Const FirmwareSlot = "2"

‘ ##### DO NOT EDIT ANYTHING FROM HERE ON #####

Const ForReading = 1
Const ForWriting = 2

Sub Main
Set fso = CreateObject("Scripting.FileSystemObject")
Set file = fso.OpenTextFile(FirmwareFile, ForReading, False)

‘ Wait for boot menu input
crt.Screen.WaitForString "[x]–>"

‘ Enter flasher…
crt.Screen.Send "l"

‘ Select partition to flash…
crt.Screen.WaitForString "Partition number for image [1-7]:"
crt.Screen.Send FirmwareSlot

‘ Give the new firmware a name…
crt.Screen.WaitForString "Image name"
crt.Screen.Send FirmwareName & Chr(13)

‘ Erase partition…
crt.Screen.WaitForString "Erase this flash partition?"
crt.Screen.Send "Y"

‘ Wait until PC Weasel is ready to receive the S19 lines…
crt.Screen.WaitForString vbNewLine & ">"

‘ Send the S19 lines until finished
Do While file.AtEndOfStream <> True
str = file.Readline
crt.Screen.Send str & Chr(13)
crt.Screen.WaitForString ">"
Loop
End Sub
[/code]

This simple script will do most of the handiwork for you. It works well for me so I’m fine with it being somewhat incomplete ๐Ÿ™‚ .

XBMC and Lirc – bleh

Since I got a Xbox 360 Universal Remote quite some time ago (actually: when a friend of mine decided that the Xbox 360 is a terrible console and not worth having – a sentiment I can only share) I was always keen on getting the little bugger to work with XBMC. Lady Luck smiled at me when I finally found a cheap RC6-compatible USB IR-receiver on eBay. Just to get you some idea what I bought:

Bus 003 Device 002: ID 147a:e017 Formosa Industrial Computing, Inc. eHome Infrared Receiver

Yep, it’s one of the run-of-the-mill Formosa SnowFlakeEmulation thingies you find in just about anything from Acer laptops to small projector addons. I don’t know about you but that’s more than I could ever ask for (at least for the 2รขโ€šยฌ I paid) and the device works flawlessly with Lirc and the Xbox 360 remote (as long as the batteries don’t die on you). So, easy peasy to get all the stuff I already hacked together wired into XBMC, eh? Not at all. You see, XBMC does try – and I’m not doing anything wrong methinks – to use /dev/lircd as an endpoint for Lirc. The commandline –lircdev gets ignored completely. Maybe I’m missing a link here. The solution is pretty simple: Create a symlink to /var/รฏยปยฟrun/lirc/lircd, start XBMC and rejoice – it verks!

Run Wuala as a Windows service

One of the more common questions is how to run Wuala as a Windows service. There is a thread describing how to run Wuala as a scheduled task which may satisfy some people – but let’s face it: You probably want a real service, you know, one you can control through “net start” and “net stop”.

Setting up your own services on Windows is pretty easy these days. You either shell out squid for FireDaemon or go the free way with srvany. If you don’t like fiddling around with software this piece of software may interest you. It is a simple service wrapper for Wuala written in C# that installs a new service called wuasrv and starts/stops the client software accordingly.

Installation is dead simple:

– Configure Wuala (i.e. check the “remember password” box)
– Unpack WualaService
– Edit WuaSrv.xml and alter path to point to your wuala.exe
– Run ServiceInstaller.exe
– Open the Windows service manager, select the Wuala service, go to it’s properties and change the account it runs under (running Wuala under SYSTEM account may not be such a great idea)
– Start the service and rejoice.

Configure Wuala to auto-login and enable the Dokan integration to get your W: drive right at boot ๐Ÿ™‚ .

I’ll post the source-code to the programs later on, so enjoy ๐Ÿ™‚ .

NX Client and Sandboxie bitching?

So, I decided to re-install my laptop today.

One thing that got me curious: The NX Client and Sandboxie started showing strange phenomenons.

Sandboxie couldn’t quick-restore files from the sandbox (permission denied error) and the NX Client couldn’t find the default key.

Turns out that both problems have the same root: Cygwin.

After some tries with Try & Decide I pinned down the problem to E Texteditor’s integrated Cygwin installation. Even using the official Cygwin setup and standard install wouldn’t help.

The quick fix for this is to not use an external Cygwin installation in conjunction with these two programs.

Quite a bummer. If anyone has a better fix, feel free to leave me a comment ๐Ÿ™‚ .

Updates to Pangya USA

Normally I’d love to keep this blog on a somewhat technical level, the early days of keen happiness and witty jokes are over. This usually means no games, no warez, no porn, no music and no opinions on online games.

Photoshopped in only one night!

People have problems with me playing cutey online-golf. That’s okay. I also play a lot of gory shooters and nobody seems to care (as it seems to fit my image, personality or character).
So, in the last days the US servers have been kind of… well… they had a bit of a problem with in-game currency inflation. Since it was weekend and nobody could ever have guessed that people play online-games on weekends, there were no GMs to be seen and things went tits up. The first emergency measure to counter hacker-mania was to shut down the Titan Boo server (which, for the non-players, is the server for Brazil). When coming to grips with the fact that this didn’t change jack they did the right thing and closed down Dolfini (again, for those non-golfers: That’s basically the market place) to prevent further abuse.

Today I log on after the maintenance to see – oh gasp – that my quit-rate is down to 0.00% again (Ai laik!!) and that we get wonderful new rares and cash-only items (Ai laik too!!). But what does that all bring me when the rates for scratchy and papel rares are still low low low LOW. Ah, and we have yet another great 2x Pang, 2x experience event this weekend. This time you can buy multipliers in large quantities, basically allowing you to get from Rookie F to Amateur E within one weekend (remember kids: Base experience * 2 [event] * 2 [multiplier] * mascot bonus).

She's legal. At least in some parts of the world...

Above an illustration about old swimming suits and new bikinis. Stuff’s available for just about any character but why would anyone not play Kooh? By the way, you get the swimming suit on the left in pink from scratchy now. Not that I would want the same thing in pink.
And why did you remove the Cousteau Goggles just when I was about to buy them?!

So, back to code and earnest work…

Dxtory: Another great Direct X/OpenGL capture program

As you might be aware, I’m a big fan of programs like Fraps or Gamecam. Especially Fraps is a great tool, it works as a FPS benchmark, video capturing program and… no, that’s it.

Gamecam has a similar set of features including an in-game overlay UI that always warns me to not use Steam overlay and Gamecam.

My biggest gripe is that both tools drag down the FPS so much when recording. Of course, a little loss is to be expected. There is a lot of I/O work being done behind the scenes. That’s no excuse for limiting my FPS to the set frame-rate of the video, though.

Fraps has somewhat acknowledged this as a “not-so-nice” thingy and thus you can allow higher frame-rates with newer versions of the software. Now it is debatable whether this really works as intended, the internet is a vast place and many forum posts state that there is no change (my sentiments exactly); recording at 30fps still drags down the game to 30fps, recoding at 60fps keeps the game at 60fps. So there’s no performance issue but… well, I don’t know.

That’s where the Japanese (but available in English) program Dxtory comes in: Dxtory does screenshots, videos, benchmarks and has a broad set of great features many people long wanted for Fraps. You can define multiple save locations and measure their speed, you have the possibility to select two distinct audio recording sources and – most importantly – you have a broad range of options for configuring the video capture. Of course, you’re not very impressed yet.

Well, while Fraps and Gamecam drag down the in-game frame-rate, Dxtory keeps the rate stable while recording. Yep, enjoy your Pangya at whooping 200fps while recording a 30fps video.

Which brings me to another great point: You can create profiles for specific applications. All the settings are configurable per application.


If you don’t know whether Dxtory is for you or not you can grab the free trial from the homepage. There is no time restriction for trial recordings (another great thing over Fraps), so test it to your heart’s content. A license costs 3600 Yen which is about 30 Euros.

Meeh

Yesterday I mucked about MonoDevelop, part of my reasoning being MonoDevelop presumably failing while compiling my perfect, non-errorous Vala code.

Shame on me, though: The blame is entirely mine, respectively my inability to check first and whine later.

So, what happened? Build yourself a nice crashing Vala application that should send something out to the console before biting the dust. Now build it on Debian Squeeze. Run and check. Well, it certainly does print it’s dying message.

Now repeat the same experiment on Ubuntu 10.4, lo and behold: You won’t see the message.

This is the point where reasonable people would simply check the strings in the produced binary. Didn’t think of doing that, mea culpa; you’ll see the strings are present in the file but not being displayed (ergo: There’s no problem at all, just some unexpected behaviour).