No more pink walls

    Still kickin

    Last night I went searching for s small, fairly simple utility that would pull info from a CDDB database (or similar such as Amazon) and use it as the base for ID3 tags on MP3’s. I had resigned myself to the fact that most likely such an application was going to require Windows as almost all apps like this target the non-technical market. The advantage of this of course was that any application i found, or so i thought, would be simple to use.

    After about 30 minutes searching (This was FAR too long to begin with) I’d located two Windows apps. And yes, before anyone asks, I had trawled through sourceforge and freshmeat looking for an appropriate OSS app to do the same. Both of the apps I found reminded me strongly of the Crazy Frog, not a good sign.

    Anyway, getting to the point of this rant, every single application i found (I went searching again after the first two) sucked! They were either buggy, had terrible interfaces (like REALLY REALLY terrible, despite the fact that there was more eyecandy than OSX), or just didn’t work. A combination of these was also favoured. They were all overburdoned with features and were slow, clunky and not at all the solution to the rather simple problem I had.
    After 2 hours i gave up and did the whole lot manually in 20 minutes. IT SHOULD NOT BE THIS HARD!

    Now admittedly I may not be the elite internet surfer who can pinpoint exactly what he wants in under 20 seconds, but I think I’m pretty good and I searched all the normal locations for a prog such as this. The only conclusion I can come to, and i’ve been coming to this for quite some time, is that Windows programmers don’t know what they’re doing. They rely heavily upon other peoples libraries and hack them together with a bling’d up (read garish) UI and charge $30 for it.

    I’ve placed this particular task on my list of apps to write at the end of this year and, after a little preliminary reading on the area, i think I’d have something whipped up in about a week of off and on coding. I don’t consider myself a great programmer but even for me thats a quick little development life. How can a company made up of at least 1 full time programmer get it so badly wrong?

    Ok so there’s heaps of different guides out there for how to do this now and I’m sure there are better and more complete ones that this will be. But this is how it went down for me.

    What you need for this:
    The patched image file (tiger-x86-flat.img)
    linux
    A free physical hdd with at least 10gb on it
    the CoreGraphics file (Optional: Needed if you want rosetta and have SSE3)

    What to do:
    1) Place the image file somewhere that you can access in linux. I had a problem with storing it in Windows as it is larger than the 4gb maximum file size so I’d recommend a filesystem like ext3 or similar.
    2) Boot linux and make sure you can get to the image file and the harddisk you want OSX on (in /dev)
    3) Type the following:
    ‘dd bs=1048576 if=./tiger-x86-flat.img of=/dev/hda’
    and remember to replce ‘/dev/hda’ with wherever you want OS X to be installed. Everything on this drive will be wiped! And of course you need to point ‘if=’ to the location of the image file
    4) Wait, took me about 5 minutes
    5) Once its done reboot (and boot the hdd you just imaged, der). You will get to the Darwin Boot Loader, similar to GRUB only not. Press any key to interupt default boot
    6) at the prompt type -s This will boot into single user mode for Darwin (NOTE: Not for OSX!)
    7) To get into OS X single user mode type ‘sh /etc/rc’ at the prompt. If this fails as it did for me you can try editing /etc/rc to boot in single user safe mode. See bottom of this page for instructions.
    8) Once a prompt appears type ‘passwd curtis’ (Enter new password)
    9) Then ‘passwd deadmoo’ (Again enter a new password, make it the same as above)
    10) Reboot
    11) Now this time at the Darwin Boot Loader you can try a number of things. Firstly just let it boot normally. This will probably fail because of a hardware issue, if not then you’re a lucky bastard and I hate you. If it does fail, reboot again and type ‘-x’ at the Darwin Boot prompt to boot in safe mode. You can also try -v for verbose as this seems to work sometimes as well.
    12) fingers crossed you will now be at an OSX logon screen. Login as deadmoo with the password you set and you’re good to go.
    13) If you have a CPU with SSE3 then you WILL want to perform the following steps. If not then you’ve gone as far as you can so start playing around. These steps enable SSE3 and hence Rosetta support. This will allow you to run apps compiled for PowerPC under x86. Pretty sweet huh?
    14) Get the CoreGraphics file. See top of instructions for location.
    15) Unzip it and place the file inside in the following location:
    /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/
    You may wish to backup the existing copy that is in this directory first. Also you will need to do this as root (sudo).
    16) change the file permissions on this to 755
    17) reboot. everything should now be hunky dory for Rosetta. The easiest way to test this is to fire up iTunes, if it runs, rosetta is working.

    And thats it! Let me know if there’s anything else you need

    *****
    Getting rc to boot in safe, single user mode:
    You need to change single user mode so that the filesystem is mounted writeable as its read only by default. The instructions for doing this appear when you first enter single user mode. Now edit /etc/rc with your fav editor (nano!). You will see a line at the top saying ‘export -n SafeBoot’ or similar. Just add ‘=-x’ to the end of this. Save and exit. Type sh/etc/rc and fingers crossed you will get to a new prompt with OSX in single user mode. If not reboot and try it again, it can be tempramental, it took me 3-4 shots.

    Ok I thought this probably deserved a post of its own.

    I’ve just been playing with Rosetta under OS X running on x86. Its all working as well as can be expected and I’m currently running a number of apps that were compiled for PowerPC (Firefox, iTunes etc). This is using the Rosetta engine which inturn (I’ve been told) uses the processors SSE3 capabilites to perform any required interpretations.
    A question that had been on my mind ever since I heard about Apples move to Intel was whether or not code utilising PPCs Altivec instruction set would work on the new platform. I’ve read a lot of different things from people saying that it will be supported by Rosetta or it won’t or it will have shocking performance issues etc but I wanted to see once and for all.

    Well from what I’ve just discovered the answer is a resounding NO, it will not run!

    I’ve taken very simple programs that use Altivec instructions, compiled and tested them on the trusty G4 and then moved the binary over to my P4. Upon running these however I simply get an error stating:
    “Illegal instruction”
    Remember that when Apple made the announcement about moving to Intel they said that at most a recompile of code would be required.
    Well I then took the code and tried recompiling it under OS X x86 using the gcc -faltivec argument and was unsurprised to find that this didn’t work either, simply returning an error stating:
    test.c: In function `main':
    test.c:8: error: `vector’ undeclared (first use in this function)

    Well so much for a smooth transition for anything using Altivec.

    Testbed:
    Intel P4 (Prescott) 2.8
    512mb Ram
    80gb SATA drive
    The examples i tried are those off the Apple website at http://developer.apple.com/hardware/ve/tutorial.html

    OS X86

    3 comments

    Well for anyone who is interested in Apple computers, you may have already heard that someone last week hacked the Intel developer image of OS X to run on any machine. Really it was only a matter of time.
    So incase you hadn’t yet guessed…. I installed this on my trusty old P4 (I knew the thing would come in handy again one day!). It really is the oddest feeling to have OS X booting on a machine like this, very much like you’re breaking the rules. Here’s some proof:

    The install wasn’t an easy one although I believe now that someone has created an image that is already patched etc and so its pretty straightforward. I’ve yet to find anything that doesn’t work, however thats not to say it runs perfectly. There are occasional graphics glitches and I can only get a single monitor working. It didn’t like a PS2 mouse at all so I’ve switched to a USB one that seems fine. Also I can’t get any resolution over 800×600 so it looks a little ugly but hey, its running!

    I’ll add more about it later, probably a few more screenshots too.

    Update: I’ve got Rosetta working now so in theory I can run ANY precompiled OS X app (IE something that was compiled on PowerPC). I’ve tested it with iTunes and its working ok. The next thing I want to try is something that has AltiVec code in it ;)

    Minor Updates

    3 comments

    I rememberd I had two other things to say about the Mighty Mouse.

    1) (And I realise this is a more generic OS X mouse thing) I CANNOT set the sensitivity of my mouse high enough in OS X! This drives me nuts. Its so close but not quite as fast as I have under Windows or Linux!

    2) Before I say this, I’ll mention that I think Apple does a fantastic job on software (Hardware too of course), but who the hell writes a mouse driver that is 152mb installed?!! Its basically the same size as that last update to OS X and only adds the tiniest bit of functionality. I would really love to know what the hell is in that thing.

    Finally, on a non-Apple note, I’ve registered www.monkey-labs.org for use with any projects I might decide to work on. Its also something of a communal thing so if anyone else has any projects their working on that need a home, just ask. Its not hosted anywhere yet but I want to get a CVS server hosted somewhere that I can point a subdomain like cvs.monkey-labs.org at. Anyone know any companies that do reasonable CVS hosting?

    Mighty Mouse

    2 comments

    So the other evening, bored on the overnight shift, Apple decided to release their Mighty Mouse. It was about 01:30am at the time and my credit card just kept getting hotter and hotter until it was used. Two days later it rolled up at my door.

    An interesting thing about purchasing an item only minutes after its release is that about 5-6 hours later, the revies start getting published. Albeit they’re mostly pretty amateur at that stage but they started to get me a little worried. For anyone who hasn’t taken a good look at these little devices, they don’t actually contain 2 buttons, they just simulate it by having touch sensitive inputs where normally there would be buttons. The upshot of this is that it still feels very much like the original Apple 1 button mouse. The downshot (?) however is the way Apple uses these sensors.

    When i originally looked through the Apple site for the mouse, I assumed that these were some variation on pressure sensors that allowed it to know where the ‘click’ had come from, despite the fact that there was only 1 microswitch. Frustratingly, I was wrong. They simply detect where your fingers are located and from that assume which button was clicked. Good theory and it kinda works. The problem is that if you have your left finger resting on the ‘normal’ left finger spot when you right click, it registers as a left click. Bad logic, whether it works or not, its still poor.
    When I found this out I was a little worried that the (expensive) little mouse I just bought would just be more of a frustration. I could see myself switching back to the old MS jobby and trying to flog the Mighty off to another Mac nut.

    Thankfully now that its arrived I find the problem isn’t as bad as first thought, it is still noticible however. You kind of have to train yourself to subconsciously lift the left click finger ever so slightly before right clicking, other wise you don’t get the required response, even the slightest touch will trigger left. My other major gripe is that I really thought Apple would have made this, their ‘premium’ mouse, with a laser instead of just optical. This, of course, I did know before ordering though.

    So my final opinion? 7/10. My standards for Apple products is high and I would have expected the long awaited ‘2 button’ Apple mouse to be a little more advanced and groundbreaking, but it is reasonable. I should also mention the scroll ball which works fantastically well! Even nicer than the old two-wheel mouse I used to use.

    If anyone wants to have a more detailed look at this thing, check out this

    An article on /. this evening got me thinking, again, about open source. Specifically today it was open source in government. The article was about how the Australian Tax Office (ATO) has release their latest version o e-tax, their electronic tax submission program and, surprise, surprise, its Windows only.
    Whilst it being a Windows program isn’t too frustrating the fact that there is ONLY a Windows version is a little disturbing. Most people seem to use the argument that 90+% of all PC’s out there are running Windows so this is not a problem. Anyone complaining must simply be some pincko lefty running linux or MacOS (Or something even stranger). This argument is fine from a purely useability point of view however morally and ethically I object to it on two main grounds:
    1) It shows a complete lack of flexibility within the ATO. A system such as thihs could just have easily been written in a multi-platform way such as Java or a browser based interface. Forcing users to have paid for a commercial product is wrong and unethical from a government
    2) My tax dollars paid for this e-tax application to be build or bought. Ignoring the fact that I’ve contributed financially to something I cannot use, where is the source code? If the public have paid for this application then they are entitled to the entire application, including the source code. Additionally this would eliminate the complaints for the ATO as it allows the community to port the system to whatever platform they desire.

    The only reason for not releasing a program such as this under an open source license is security. If the ATO is so worried about security then, in my opinion, they have a poorly written system and should be addressing this. It is bad enough that large companies are able to hide their shabby products behind closed source, we should not be permitting our government agencies to be doing the same thing.
    Its the old thing of “if you’ve got nothing to hide you’ve got nothing to be worried about”.

    I’m not even going to mention areas such as accountability, standards compliance, accessibility issues etc, but in an ideal world where governments are FOR the people, begging for openess would not be an issue.

    Edit: What’s worse is that I just went to download this application and found that it won’t let me do it with Firefox! Not even download it! This is nothing if not descrimination against free software. There is no possible way that they can argue IE is either more secure or more standards compliant and yet they will force me to upgrade a piece of software I don’t even use before I cn download a single file. If they are using IE’s library files to submit returns then god help us all.

    I’ve been meaning to post something about the EU software patent decision since it was announced a day or so ago but haven’t go around to it. For anyone who considers themselves a nerd and hasn’t managed to hear about this, the European Union voted down (by a considerable margin) a bill to introduce software patents across Europe. If you need some more background on it take a look at this

    First off let me start by saying software patents are evil. Sure, many things in the tech world, for example open source code, I consider to be a virtuous thing, but I can usually see 1 or 2 exceptions to the rule. Cases where maybe they aren’t the best way to go. This, however, simply doesn’t apply to software patents. They serve big companies and big companies alone. They stifle innovation and put a dark legal cloud over smaller software companies.

    The decision is a good one and I’m surprised by the margin that it was passed through with. It does not however mean that ‘we’ are out of the woods. Whilst there will now be no law for software patents across the whole of Europe, this decision allows for individual countries to make up their own minds about whether or not to allow these trivial patents. You might think that if countries all voted this down in the EU then they will do a similar thing individually but I don’t think its that easy. Something tells me that this ‘victory’ had a lot to do with some large companies turning sour on the EU bill after a number of amendments (~140) were made to it. These same companies will still be pushing for software patents in each country and now because there is no one unified front, I fear that the it will become a non-issue in many of these countries, not enjoying the same level of opposition or debate.

    The more I read about software patents, the more they look like a dream come true for large companies seeking a monopoly for themselves. I actually find myself getting angry when I hear about them and the harm that they have/will cause/d. Sure they may not sound like something worth fighting for now, especially not to someone outside of the technology community, but I really think that I can see myself trying to do something good in this area, be it in either a professional or hobby capacity.

    I’ll end this entry by saying that I still firmly believe that the best way to conqueur this world would be to take out a patent on the idea of patenting something. After that its game over.

    There’s an age old school of thinking that says that its not how good something is but how good people think it is that counts. Whilst we are now somewhat calloused to this line of thought I came to thinking tonight how big a difference it makes in the world of technology.
    A well known technology company is almost always considered either ‘good’ or ‘bad’. If I say Microsoft, you think evil etc. This plays a HUGE part of the way we, or at least I, think about a situation involving such a company. For example if Microsoft make a press release about some great new product X, then I’m instantly sceptical and begin looking between the lines for the hidden trap. Conversly if Apple make a similar announcement I focus almost exclusively on the good points and don’t worry if something might look a little strange under scrutiny. This is especially in a case where one company is making claims against another (good vs evil) which is, unfortunately, quite common and i would almost always instantly side with the ‘good’ company and trust their claims more.
    A number of observations I’ve made about this:
    1) A ‘good’ company would be able to slip dodgy things through with much greater ease.
    2) When a ‘good’ company sides with an ‘evil’ company (No prizes for guessing what I’m thinking here), then it seems to drag them down rather than the latter up.
    3) Why don’t more companies see this as a way of gaining market share? At the moment Sun is doing a fantastic job of turning themselves into a ‘good’ guy and IBM has already shown how a massive company can be successful doing this.
    4) Even if you are just a company interested in nothing but money, screwing your customers for short term income isn’t the way to go.
    5) I’m not saying everything should be open source (Though this would be nice), I’m simply saying that make a quality product and offer it in a way that is appealing and you will turn a profit. Raising lawsuits against people because you’re pushing shit to people isn’t the way to win friends.

    A lot has been said about international students lately, most of which revolve around peoples own experiences. Today the Age is running an article on the hardship faced by these studens, including racism.
    Ignoring the fact that most of the problems outlined sound applicable to nearly every university student I know, irrespective of race, what the whole thing fails to show is the reasons for such problems occuring in the first place. People these days are beyond racism purely for racisms sake (ie wanting to feel superior). If people are ‘racist’ today they typically have a reason for being so, whether this reason is acceptable to others is another issue, however it seems that people are starting to agree on these reasons (And they are not as far fetched or paranoia fuelled as they traditionally have been). Its these issues that should be addressed.
    Whilst I’m not trying to say that there is some great conspiracy in it all, I don’t think this is information that the universities would not really want out in the public. Of course they’re trying to encourage internationals simply for the dollars, why else? (its certainly not for their high quality of work) , but they don’t have to make that too obvious.

    Note: To anyone reading this who has no idea of the background I’m coming from this must all sound terribly racist. I assure you its not. It is simply my take on it as a tutor who has to contend with a number of international students for whom great allowances are being made.