I only jumped on the dual monitor bandwagon a few months ago but now I see how hard it is to go back to a single display. I decided that the next “new” thing to try out was 3D and I also wanted a better monitor than my old 24″ Samsung Syncmaster 245B. The problem was that I couldn’t find a monitor with its 1920×1200 resolution at the same size and with 3D. Then out of the blue I stumbled across the Acer HN274H 27″ 3D 120Hz LCD Monitor. There are lots of reviews about it but there are lots of things that are not covered by most people. This is my first hand review as someone that has used it for a week on a daily basis for work and gaming.

Continue reading “I Bought An Acer HN274H 27″ 3D Monitor!”

The project I’m working on today allows users to type their own filenames. The actual file extension is added afterwards by my system. I needed to check that the filename itself is valid for Windows so I came up with this:

var file_name:String = ” #DOG!”£$%^&*()_+{}~@:?><|¬`-=[]#’;/.,”;

// Remove chars not allowed in Windows filename / : * ? ” < > |
file_name = file_name.replace(/[~\/:*?”<>|]/g, “”);

// Trim leading and trailing whitespace.
file_name = file_name.replace(/^s+|s+$/gs, “”);

// traces #DOG!£$%^&()_+{}@¬`-=[]#’;.,

Although it looks like crap that is still a valid file name. So then my system automatically appends the custom file extension that I’m using. I’m clearly not a regexp wizard but the above seems to work for me. Could probably combine the two but I’m not fussed for now. I got the trim regexp from the comments in this post.

Another option would of been to use the TextFields restrict property which will prevent them from typing or pasting in any of the illegal characters. In hind-site I’ll probably switch to using that as it will be less confusing for the user:

this.my_textfield.restrict = “^\\/:*?”<>|”;

I get a kick from making ringtones and notification sounds and my friends seem to enjoy them as well. I had an accident and deleted a bunch of them a few weeks ago and since then I’ve played with the idea of putting them all online so that I can have a live backup of them all. I’m hoping you will enjoy them as much as I do. I’ll keep updating the post as I make new ones.

I should point out that I haven’t made any of these from scratch, some are presented in their entirety whilst others I’ve chopped down to make more suitable for their new purpose. If anyone has a problem with me sharing them then let me know and I can take down the offending tune.

Ring Tones

Blur – Advert With Bass.wav
Blur – Advert.wav
Doctor P – Tetris Original.mp3
Doctor P – Tetris.mp3
Doctor P – Tetris.wav
Family Guy – I Like Farts – Short.ogg
Family Guy – I Like Farts – Short.wav
Family Guy – I Like Farts.ogg
Family Guy – I Like Farts.wav
Family Guy – Its Quagmire.mp3
Family Guy – Peanut Butter Jelly Time Tune.mp3
Jazzy Jeff and The Fresh Prince – The Fresh Prince Of Bel Air Intro.ogg
Jazzy Jeff and The Fresh Prince – The Fresh Prince Of Bel Air.ogg
Johnny Douglas – Dungeons and Dragons.mp3
Lipps Inc – Funky Town.mp3
Lipps Inc – Funky Town.wav
Monkey Island – Banjo Loop.wav
Muppet Show – Mana Mana Song Original Short.ogg
Muppet Show – Mana Mana Song Original.mp3
Muppet Show – Mana Mana Song Original.ogg
Old Dirty Bastard – Shimmy Shimmy Ya.wav
Old Dirty Bastard – Shmmy Shimmy Ya.ogg
Oompa Loompa Song 1.mid
RType – Super v2.mid
Sonic – Sky Base.mid
Sonic 2 – Invincibility.mid
Sonic Chaos – Intro.mid
Sonic Chaos – Invincibility.mid
Star Wars – Cantina Tune.mp3
Super Mario Brothers – Theme 2.mid
Teen Titans.mid
The Curse Of Monkey Island – A Pirate I Was Meant To Be.mid
The Godfather.mp3
The Grand Duel – Parte Prima.mp3
The Secrect Of Monkey Island – Chuck.mid
The Secrect Of Monkey Island – Lechuck.mid
Wonder Boy – Invincible.mid
Wonder Boy – Round.mid
X-Men – X-Men Cartoon Guitar Solo Version.mp3
X-Men – X-Men Cartoon Guitar Solo Version.ogg
X-Men – X-Men Cartoon Metal Version.mp3
X-Men – X-Men Cartoon Metal Version.ogg


Aliens – Game Over Man.wav
Back To The Future Horn And Strings.mp3
Back To The Future Horn.mp3
Back To The Future Jingle.mp3
Back To The Future Wind.mp3
Batman – Horn Tune.wav
Batman – Riddler Laugh.wav
Battlestar Galactica – Starbucks Piano Riff.mp3
Battlestar Galactica – Starbucks Piano Riff.ogg
Bill And Ted – 69 Dudes.mp3
Bill And Ted – Dude.mp3
Bill And Ted – Excellent With Riff.mp3
Bill And Ted – Excellent.mp3
Bill And Ted – Riff.mp3
Dragonball Z – Goku Kamehameha.mp3
Dukes of Hazard – Dixie Horn.wav
Family Guy – Giggitygiggitygoo.mp3
Family Guy – Its Quagmire Short.mp3
Family Guy – Peanut Butter Jelly Time.mp3
Gears Of War – Cog Tag Collected.ogg
Gears Of War – Completed.ogg
Gears Of War – Guitar Riff.ogg
Gears Of War – Objective.ogg
Gears Of War – Stage Start.ogg
Left 4 Dead – Boomer.wav
Monkey Island – Banjo Riff 1 Fast.wav
Monkey Island – Banjo Riff 1.wav
Monkey Island – Banjo Riff 2 Fast.wav
Monkey Island – Banjo Riff 2.wav
Monkey Island – Banjo Riff 3.wav
Monkey Island 2 – Chapter Tune.mid
Muppet Show – Mana Mana Song Original Short.ogg
MW2 – Continue.mid
RType – Over v2.mid
Shinobi – Complete.mid
Sonic – Death.mid
Sonic – Emerald.mid
Sonic – Start.mid
Sonic 2 – Complete.mid
Sonic 2 – Emerald.mid
Sonic Chaos – Death.mid
Sonic Chaos – Got Emerald.mid
Sonic Chaos – Rocket Shoes.mid
Sonic Chaos – Try Again.mid
Sonic Chaos – Unused.mid
Star Trek – Door Chime.mp3
Star Trek Next Generation – Door Chime.mp3
The Trashmen – Surfin Bird – Everybodys Heard.mp3
The Trashmen – Surfin Bird – Mow Mow.mp3
Thundercats – Danger Score Short.wav
Thundercats – Danger Score.wav
Thundercats – Forever.wav
Thundercats – Ho.wav
Thundercats – Mumm-Ra Transformation.wav
Thundercats – Sight Beyond Sight.wav
Thundercats – Sword Danger Full.wav
Thundercats – Sword Danger Short.wav
Thundercats – Sword Danger.wav
Thundercats – Thundertank.wav
Wilhelm Scream.wav
Wonder Boy – Continue.mid
Wonder Boy – Death.mid
Wonder Boy – Unused 3.mid
Wonder Boy 2 – Round Clear.mid
X-Men – X-Men Cartoon Mario Paint Version Ending.mp3
X-Men – X-Men Cartoon Mario Paint Version Ending.ogg
X-Men – X-Men Cartoon Mario Paint Version.mp3
X-Men – X-Men Cartoon Mario Paint Version.ogg
X-Men – X-Men Cartoon Short.mp3
X-Men – X-Men Guitar Solo Ending.mp3
X-Men – X-Men Guitar Solo Ending.ogg
X-Men – X-Men Guitar Solo.mp3
X-Men – X-Men Guitar Solo.ogg
Yo Gabba Gabba Party In My Tummy – Green Beans.mp3

This had me banging my head for ages today. On the design I am implementing there needs to be both a “Best Seller” panel and a “Latest Products”. There is no latest product module as default and I refuse to pay for a third party one when I can just make my own. The problem I ran into was that no matter what I did the internal products array would only ever show four products. This was driving me crazy until I finally took a step back and thought about what was happening. I think the home/welcome page is actually using its own fake category called “Featured Products”. So even though my module was supposed to pull the entire product list it was only actually pulling items from the featured products category.

In the end I decided to ditch my “Latest Products” module and just use the “Featured Products” one instead. That led me to the next problem, how do I change which products are set as featured? Turns out it is well easy. Just head into the admin section and then on the main menu Catalog->Categories. At the bottom of the page you can add and remove products from the featured category. That mostly handles my problem, the final step was to modify the featured_products template file and impose a static limit to the number of items visible. The most we want to show are 4 as more will break the tile wrapping we’re using for displaying them.

So after all the hassle I went through to finally get Bad Company 2 working properly AMD have gone and done it again, they spoilt my game!

I had it all tweaked out and running smoothly, the last big hurdle for me was the screen going black during game-play which obviously, totally kills things as you can’t see what you’re doing. Yesterday I upgraded to the new 11.3 AMD Catalyst drivers. What a disaster. The game will no longer load at my 1920×1200 60Hz resolution. Instead it keeps forcing itself into 59Hz mode. No biggie on its own but for some reason when the level starts loading the screen starts to shake. It makes the game totally unplayable.

I spent a few hours testing out various setting combinations to find something that works and as usual, I thought I’d post my findings here for others to check out.

Continue reading “AMD Catalyst 11.3 Kills Bad Company 2”

This is a post to a quite small group of people. Those are the people that use the Funambol service to sync their data amongst multiple systems. I use it to sync my Calendar, Tasks and Notes between Outlook 2010 and my Android phone. It works just as it should except that if you enable the scheduling option within the plugins config application you will be hit with an Outlook popup window every time the scheduled sync fires off. This only happens if Outlook is not currently open. This is pretty much the same issue as the official Google sync application has.

I am using v9.0.2 of the Funambol Outlook plugin. I downloaded the source so I could take a stab at fixing the annoyance but I only had a few minutes to chew through it before I had to move onto some actual paid work. One thing I did notice are some short cut keys that I had not seen mentioned anywhere. As long as you have Outlook open and it is the window with focus then you can use these keys.

CTRL-F7 – Opens the plugin application and starts the sync process. You then have to manually close the plugin app.
CTRL-F8 – Opens the plugin application but does not sync.
CTRL-F9 – Opens the plugins applications config page.

So what I do now is have the scheduled sync turned off, then I just tap CTRL-F7 whenever I change my calendar, note or task entries. In reality I only change those a few times a week so this is a fine workaround until the Funambol team sort out the plugin or I get around to doing it myself.

I switched to VNC over remote desktop a few weeks ago as the RD connection kept playing havok with my dual screen setup on the remote target. VNC seems fine and I really like the way that I can be logged in on the remote machine locally as well as remotely. One thing that has bugged me is that it doesn’t seem to save my password. I’ve got it sorted now but it was a bit of an accident!

Continue reading “Saving Passwords with the UltraVNC Client”

Previously I have described how I got my AIM RC118 MCE remote working with XBMC and my Harmony One. Today I decided it was time to put the final touches on it all.

A few things have been bugging me so I made a list of what I’d like sorting out:

  • The top row of buttons does not work, Pictures, Radio, Music and Video.
  • The color buttons seem to be doing the job of the 4 buttons just mentioned.
  • It would be nice to have a button to go back to the home screen.
  • Have a button that when pressed would shut down XBMC and reload it again. I noticed that playback performance would suck when I tried to view a video after leaving XBMC running for a few days. A quick app restart sorted it so it’s this kind of functionality I want to bind to a single button press.

So it doesn’t seem like a lot to ask but it just took me over a couple of hours to sort out.

Continue reading “Final touches of my XBMC Setup”

I switched from using a crappy D-Link WDTV-Live to using HDMI over ethernet with IR pass through so that I could use XBMC. Bought an AIM RC118 MCE remote from Maplins that works fine with the system. It is very responsive.

I tried to set it up on my Harmony One remote as I have with other remotes but this one was undetected. Well it was and it wasn’t. The Harmony software didn’t recognise it at first and asked me to input a few buttons from the original remote. After about 4-5 buttons it then said it knew the rest already and that was it. When I tested it though the remote was extremely sluggish slow. It would take 3-4 button presses to get a response. I’ve tweaked it as much as I can and have reached a point where I am moderately happy with it. I thought I’d cover what I did here so others can try it out.

Installing the Aim IR605A/Q Receiver
To be honest Windows XP actually hated the AIM remote receiver and refused to install it. Out of the box the receiver works fine with Vista and Windows 7 as it is supported natively. Not so in XP. I downloaded the Update Rollup 2 for eHome Infrared Receiver for Windows XP Media Center Edition 2005 (KB912024) and tried to install that. After unpacking the files it would close saying that I had the wrong version of Windows as it was looking for the Media Center edition.

The simple fix is to cheat and manually grab the drivers out of the installers temp directory. Run the installer again and when you get the error popup, don’t click OK. Instead open My Computer and go to your C: drive. You will see a directory with a long alpha-numeric title. That is the temp one used by the eHome installer. Inside there is a directory called SP2QPE, copy that to your desktop. Now when you connect the MCE receiver and it prompts you to install drivers just point it to that directory and let it install the uncertified drivers. You will now have the device installed on the system.

All is still not well though as for me, nothing would happen when I’d press the remote buttons whilst XBMC was loaded. I got around that by using MediaPortals IR Server Suite. It auto-detected that I had an MCE remote hooked up. You can test the remote out by using IR Server Suites debug client utility and it’s Listen then Learn options. In the MCE plugin settings for IR Suite I told it to override the hardcoded buttons as without this the number pad and directional controls would not work.

Tweaking the Aim RC6 RC118 remote settings for the Harmony One
I’ve done a bunch of searching and it seems the Harmony One remote has a few short comings, one of these is that it has a minimum duration of 300ms for each transmission. On top of that it adds several user configurable delays as well as a repeat frequency. It took quite a bit of testing to get something workable, around 4 hours went into this and a lot of running up and down stairs!

The first step after the initial setup is complete is to re-learn the directional buttons. In XBMC you will be using up and down a lot to navigate. I read that if you do RAW learning then you will have an extra delay added onto the command that you can do nothing about. Just use the normal learning option. So on the Devices tab click Settings on your remotes tile menu. Then choose “Learn infared commands”. On the next page scroll down to DirectionLeft, DirectionRight, DirectionUp and DirectionDown, tick them all and then choose to re-learn them. Follow the onscreen process. Once that has completed just ok your way through all the confirmation screens, leave the remote connected. The way I see it is that at the start the software said it did not recognise the remote. Later it suddenly decides it does recognise it and you are supposed to trust that it will pick the best profile. By learning these keys myself I know for a fact that they are correct.

Now it’s time to adjust the repeat value. We do this before changing the delays as a side-effect of changing the repeat value is that the Harmony app automatically adjusts the delays without telling you. So start on the Devices tab. Select the “Troubleshoot” option for your remote control, then “Server responds to some commands either too many times or only occasionally.” on the next page. I set it to 3. Run through the “Update Device” procedure to get it onto the actual Harmony Remote. Again though, don’t bother disconnecting it yet. Using values of 4 or 5 meant that it would jump to many times. So I would scroll up once and it would actually scroll up twice.

Now back on the Devices tab choose the “Settings” option for your remote and then the “Adjust the delays (speed settings)” option. I set “Power On Delay”, “Inter-key Delay”, “Input Delay” and “Inter-Device Delay” to 0.

Now you can do the “Update Remote” option and disconnect it. The Harmony One still has a slow responce compared to the AIM RC118 remote but it is usable. I read that some other universal remotes don’t have the bad response time and that Logitech have stated that they can’t do anything about it with this remote. I’m not sure if the problem exists with their newer 900 model but I’m not going to spend £200 to find out 😆

Edit: The proper solution!
So this is actually the second edit I’ve made in two days. Last night I posted that I had given up and reverted back to the original remote instead of the Harmony One. The delay was to random and sometimes it would seem to of stopped responding. I thought I’d filled the remotes command buffer and was freaking it out. So today I spent an hour or two searching for a better remote and to be frank, I couldn’t find one. I checked out Sonys lineup and Philips range and nothing seemed as good. They sure look nice but when you start googling “Philips Pronto Problem” you start to find lots of complaints and people saying how happy they are they switched to a Harmony One.

I decided to edit the Harmony settings and remove the MCE stuff since I wouldn’t be using it, but then I stopped myself and decided to have one more go. Repeat value wise I went with 1 as anything higher or lower meant it jumped to far or not at all. Once that was settled I then changed all my delays to 100. Too many people reported problems with 0 and since my main problem was that it was too slow I didn’t want to go higher like 500 which was the default. 100 seemed the most responsive without the buttons over-reacting. That pretty much got me back to the state I was in last night.

That’s when something interesting happened. I decided to break it all down into chunks. My media server is upstairs and my TV is downstairs. I use HDMI + Optical + IR over ethernet to send and receive signals in both directions, well video and sound down to TV and remote IR back up. I have the little IR broadcaster from the HDMI/ethernet extender sat about 10cm away from the AIM IR receiver dongle in the back of the server. So back to the interesting bit. I tried using the Harmony directly aimed at the AIM receiver with XBMC open and it worked. As in it worked flawlessly. When I tried that at the start it didn’t work properly at all and showed the same behaviour as I saw downstairs. My hunch at this point was that the delay and repeat values were incorrect to start with and really did require tweaking. This meant I had actually been struggling with two problems but not realised it. Now the first problem of the settings was sorted out it meant I was left with the second problem. If the remote worked upstairs but not downstairs then it indicates a problem with the IR over ethernet part of the equation.

I started searching for problems with IR extenders and slow responsiveness in general. A couple of times I found references to the signal strength sometimes overloading the receivers. Do you see where I’m going with this? I hope so! Remember earlier when I said “I have the little IR broadcaster from the HDMI/ethernet extender sat about 10cm away from the AIM IR receiver dongle in the back of the server” well it turns out that 10cm was the cause of my second problem. I think the Harmony One is sending a much stronger signal than the AIM RC6 remote. Because I put the extenders transmitter so close to the servers receiver it was getting overloaded. Well that was my hunch so I moved the two as far apart as I could (about 50cm) and went to test it. Awesome response time now. It does flid out if you go nuts and tap the button like 20 times quickly but I normally use Page Up and Page Down for navigation and then just a few Up and Downs to finish my nav.

So there you have it, a combination of the Harmony remotes delay and repeat values along with the IR receiver and transmitter being to close together. Now I’m a happy chappy. Tomorrow or later tonight I’ll start customising the button setup. Very happy chappy 😀

Up until recently the only Battlefield game I had played was 2142, definitely one of my favourite games. I was persuaded to give Bad Company 2 a go and safe to say that is now also one of my favourite games. Some things are quite different than 2142 and will probably trip up other people as they did me. I thought it would be handy to make a guide of the differences that have stumped me so far. I’ll add more as I come across them.

Continue reading “Battlefield 2142 to Bad Company 2 Migration Guide”

I had to kill her, because she was going to tell on me. You’re not going to tell on me… are you?

— Esther, Orphan