UK Keyboard for DOS under Vista

Hat’s off to Microsoft – they have maintained backward compatibility through numerous operating systems since 1981. Even Vista can run ancient DOS applications, although Microsoft doesn’t go out of its way to explain how.

Are you having problems with DOS programs where the keyboard doesn’t always come up with the right symbols? This is because DOS programs under Vista are assumed to be using an American keyboard layout. To change this you have to dig a bit.

There’s an equivalent to AUTOEXEC.BAT called AUTOEXEC.NT in C:\WINDOWS\system32. This won’t be news to many, it’s been around for a while. From inside this you can load the appropriate keyboard driver in the same way as you did under DOS – i.e. keyb uk

Except you can’t – they’ve renamed keyb kb16. Good name, eh?

So to get a UK keyboard back I’ve found that adding the line:

kb16 UK,850,C:\windows\system32\keyboard.sys

to

C:\windows\system32\autoexec.nt

does the trick. If you’re in some other country, you could try your two-letter country code in place of UK. 850 refers to the code page.

The probably works with Windows 7. Now that I’m just getting used to Vista.

I killed the computing press.

In the 1980’s and 1990’s there were a lot of interesting companies producing interesting bits and pieces related to the world of computing, and a lot people were interested in hearing about them. By about 2000, computers had become commodities, as expected. There are obviously far fewer manufactures, and their products tend to be pretty much the same. They’re mostly bought by people as tools, and most computer users wouldn’t recognise a bus controller even if it ran them over.

Not only have I stopped reviewing computer parts, I’ve stopped reading such reviews. Until now. Right now I want to read a review of current colour laser printers. Why? I want to buy one, of course, and I don’t know which one to pick.

You see, unlike PCs, it does matter which printer you choose because you want to produce the best possible output. This is something that can be tested objectively and subjectively by an independent human; you won’t be able to decide it by looking at the competing specifications. And speaking of specifications, they’re probably not going to be entirely honest when it comes to other metrics, so there’s not substitute for some standard test prints and a stopwatch.

I rang a friend from the Golden Age who should have known, and asked where the reviews were to be found now that Personal Computer World had folded. I was shocked at what I learned. Apparently the decline of the computer press is far worse than I feared. Not only has PCW disappeared, but PC Magazine is no more (in Europe) and the remainder are fading away. There’s no advertising revenue. And it’s all my fault! Yes – I haven’t even bought a computer mag in years. How could I have bought anything through reading adverts? Or reviews?

But reviews are essential. Without them, how can anyone decide what’s good and what’s not? Where are the reviews? If anyone can tell me, then please do.

I was directed towards cnet – founded by some ex-VNU types, apparently. Also, to my surprise, Trusted Reviews They do know a bit about what they’re reviewing, but I suspect, having read some of them, that there aren’t many big guns on the staff to provide context. In fact I do wonder about there being much in the way of staff at all. Staff cost money and there’s precious little of that around for journalism. And no, there were no comparative reviews of current printers to be found.

Other on-line reviews are written by users. There’s always danger they’ve been written by idiots, but either way, they’re necessarily ill-informed. If I were to review a printer now, I’d be ill-informed too. I’d need to have seen most of the printers out there in order to appreciate the good and bad points relating the the review’s subject, and that’s not going to be the case with a user.

User reviews are either full of praise or damming. Most people spending their hard-earned money on something are hardly likely to say they made the wrong choice. They’ll believe they’ve bought something good – if not they wouldn’t have handed over the dosh in the first place. They start off biased. Only if the item fails to deliver will they refrain from gushing praise in it’s direction. Instead, they’ll utterly condemn it, being furious with the supplier and manufacturer for having conned them.

So given that professional reviews are still needed, what’s the business model going forward?

Sir Alan Turing?

If you know about computers, you’ll know Alan Turing was a great man. Without his pioneering theoretical work in the 1930s computing would not have developed as did; his work on code-breaking computers during the war helped win it, and he made a considerable contribution to the National Physical Laboratory once the war ended. The man was a genius, and we owe him a lot.

Unfortunately for him, the great man was queer and this got him into trouble with the law following an incident in 1952, after which he was hounded until his death in 1954.

He was awarded an OBE in 1945 in recognition of is work during the war, but there is now a campaign afoot award him a posthumous knighthood and apologise for his treatment at a time when homosexual acts were still illegal. Although it’s regrettable that society treated him, and others, so badly, it was illegal at the time. Not liking a law is no excuse for ignoring it.

John Graham-Cumming has started a petition to get something done about his treatment. Unfortunately it specifically calls for an apology over the prosecution rather than the climate that lead to it. However, it’s still a good cause and the support from the likes of Peter Tatchell isn’t enough to put me off. Unlike the campaigners today, Alan Turing’s world was discrete and should have been no one’s business but his own.

You can get at the petition here

Digital TV for people who don’t much care

Yesterday an old friend called to ask me for an explanation of this digital TV business as she needed to relocate her set and thought it was time for a sort-out. I’m not a TV fanatic; there are no plasma wide-screens hereabouts. However, she’s not what you’d call an avid TV viewer either, so calling me did make sense in a way.

So what is the current TV story for those of us who aren’t aficionados? This is how it is.

As the government as pointed out, ad nausium, the old TV system is being switched off. That’s the TV we all grew up with – transmitted form a mast on the top of a hill somewhere and received by an aerial on your roof. This was analogue.

Analogue is not dead. There are still going to be analogue transmissions from satellites and on cable TV. However, unless you have a particular wish to watch the local news in Mongolia you’re probably not going to be interested. It’s only for specialist foreign channels; your garden will look like Goonhilly and the kit will be expensive and cumbersome.

So apart from the TV junkies, most people will want just digital TV. The only questions you need to ask are “How should I get it?” and “Do I want High Definition?”

The digital TV system is called DVB (Digital Video Broadcast). There are three basic versions: DVB-S for satellites, and DVB-T, which means terrestrial (i.e. broadcast from a transmitter on the top of a hill), and DVB-C which is sent down cable TV. Cable TV arrives down a cable laid to your house and an expensive subscription to a cable TV company. Everyone hates their local cable-TV monopoly. Unless you already know you want cable TV for your own reason, you probably don’t want cable TV.

For DVB-T and DVB-S there are both free and subscription services:

DVB-T: Freeview and Top-up TV
DVB-S: Freesat and Sky

Both systems need a specific receiver, which can include a decoder for subscription-based channels should you want them. These receivers cost:

DVB-T: ~£30 (but often built into TV sets, especially since 2007).
DVB-S: ~£50 (just starting to appear built-in to some high-end sets).

Here’s where it starts to get tricky. If you do want High Definition (HD) you can only get it on DVB-S (satellite) and you need a special HD receiver box. These cost £150 instead of £50.

With HD the picture is simply made up of more dots than on a standard picture. HD is only worth it if you have a large HD-compatible TV. On a smaller set the dots are so small anyway that you won’t see the extras, and if the set is not not HD-compatible you’re definitely wasting your time. The HD Satellite standard is often referred to as DVB-S2.

You can have a mixture of standard and HD satellite receivers, once you have the dish and the wiring in place, so if you have small sets you can use a standard receiver and get an HD receiver for the big set in the garage, or wherever you keep it.

You can, of course, get an HD receiver ‘free’ from Sky. You’ll see such offers all over the place (Tesco current has posters up offering a free Sky HD box with this set). In the small print you discover you need to take out a subscription to Sky TV for a couple of years – something like £500. This is fine if you want the Sky channels; the only people who I know who feel its worth it are the sports fanatics wanting a wide choice of live football.

What’s coming in the future, just to confuse matters, is HD on Terrestrial transmitters – DVB-T2. This doesn’t exist yet, but is planned for later 2009 in some areas. We’ll have to wait and see what actually happens but it won’t work with standard DVB-T (Freeview) equipment even if a TV does say ‘HD Ready’.

If you think it’s time to upgrade your TV you can buy one with a Freeview (DVB-T) receiver built in. In fact, since the start of 2009, you’d have been hard pressed to find one without it. Unfortunately if you want a built-in satellite receiver then you’ll have to wait. There are some around; they’re quite rare and expensive. Give it a year and I suspect they’ll be common enough too.

So to summarise, if your TV has a screen less than about 32 inches either get a new set with Freeview (DVB-T) or a £30 receiver box to work with your old set. If it’s bigger than 32-inch you’ll get a better picture with Freesat, but the decoder box will cost more and you’ll need to install a satellite dish. Or you can wait until 2010 (or later) when DVB-T2 turns up and gives you HD through a normal aerial. It depends on how good a picture you want.

The road to hell…

I’m not a communist, but it’s pretty obvious to me that there are some things that are best not left to the free market. The management of Internet domain names is one of them. And no, I’m not about to discuss the pigs breakfast that the American’s have made involving Network Solutions. This problem’s home grown, and fortunately, it hasn’t happened yet.

Nominet is the not-for-profit company that manages the allocation of most of the .uk domain names (notable exceptions being .gov.uk and .ac.uk). By and large it does a pretty good job; and anyone who thinks otherwise should look across the Atlantic and think again.

But this, apparently, is not enough. The management wants to widen its terms of reference to allow it to undertake new projects such as the allocation of telephone numbers. Now I don’t have a problem with this – Nominet has proved it can allocate domain names, so they’re a sensible choice to take on this new role. However, the terms of reference they are asking for allows them to offer ‘consultancy’ services. According to the document, they’re being asked for this and turning potential customers away. I say ‘Good!’

Nominet has a ‘public service’ charter. It’s a monopoly because we need one. The Internet community in the UK effectively owns Nominet, and it represents everyone’s interests. This is why it was set up with such narrow terms of reference – it’s a one-trick pony. It does what it does, and it does it well. It’s not competing in the marketplace for anything else, and no one can compete with Nominet.

But what if it could complete with other companies? It wouldn’t be doing so on equal terms – it holds the levers of control for the whole UK DNS. It has a guaranteed income stream form issuing domain names. It can take risks and lose money without worrying because it has a goose laying golden eggs. It’d make one hell of a player! But it would do so at the expense of everyone else.

Is the management of Nominet actually bent on world domination? Well I’ve had a chat with the people responsible and they insist that they only wanted to bid of the telephone number allocation business and while they were at it they wanted some general clauses added to cover future eventualities without having to change their terms of reference again. They had no intention of competing with their members or anyone else. That’s great, but will it remain so for the rest of time? I doubt it. With nothing in the terms of reference to hold them back, sooner or later someone would take advantage. What’s the point of having power and not using it.

If you’re going to have a non-profit organisation managing a monopoly for the public good then it should do just that. No more, no less.

For more information take a look at Nominet’s web site under consultations.

For Nominet’s Consultation Document click here.

How to prevent spammers getting your email address

Everyone knows this one, right? Just obey the following rules:

  1. Don’t give your email address to strangers
  2. Never post your email address on newsgroups
  3. Don’t leave your email address lying about on web pages.
  4. Don’t reply to spam – they know you’re reading it.

Unfortunately this advice is seriously out-of-date, although some emails are still harvested by spammers this way. People keep asking the question “I didn’t do any of the above, so how come I’m getting all this spam?”

What the American spammers are actually doing is using malicious software on innocent computers (installed using the normal virus channels). Amongst other things, this software searches the victim’s hard disk for all the email addresses it can find. It then sends the results back to be added to their spamming list. In order to have your email address added to a spamming list, all you need do is exchange an email with an infected PC – or a PC that becomes infected in the future.

As to item four, about never responding to spam, this is no longer the case. Spammers don’t use their real return address anyway. They track who’s reading their wares by embedding a reference to an image in an HTML email. When the message is displayed the image is downloaded from their server; when this happens they know who it was. Microsoft Outlook allows this to happen; Microsoft doesn’t appear to be in any hurry to fix it.

So what can you do? Not much! If you can, use disposable emails. For example, if you’re the secretary of a club and you correspond with a large number of people, some of whom are likely to be hijacked, make your email address ’secretary1@…’. When this is compromised, change it to ’secreatry2@…’ and so on.

A proper solution is needed, but there’s no political will to solve it. The identity of the criminals doing this is well-enough known; the American’s just let them operate virtually unhindered. Something to do with ‘freedom of speech’!

Using AOL with a Router

Why does everyone hate AOL (America On Line) so much? Probably because it allowed Joe Public access to the Internet, and Joe Public didn’t know how to behave. AOL also provides a simplified service at what has often been a premium price. And their marketing makes the technically literate cringe with embarrassment.

However, people do use AOL Broadband, using a modem. Today I had to get ADSL running for a small charity that happened to have a live subscription to AOL, so why not use that? No information on if or how it would work with a router, that’s why not.

However, some experimentation, judicious guesswork and a polite but firm telephone call to an overseas call centre produced the following results:

First off, remember this is for England only. Secondly, AOL calls the user-ID a ’screen name’. Make sure you get the case exactly right – it’s sensitive!

So, to make AOL work with your router as follows:

  • PPP User ID: [screen name]@aol.com
  • PPP Password: [usual password]
  • PPP Authentication: CHAP (or PAP+CHAP)
  • VCI: 38
  • VPI: 0
  • Modulation: G.DMT
  • Dynamic IP address
  • Encapsulation: VC Mux (Multiplexed)
  • Protocol: PPPoA

This assumes you know what PPP is, and how you program your router. If not, I hope you’ve got a good router manual. Set this lot up and away you go – LCP will provide the necessary IP address, DNS and so on – filtered down to the machines on the LAN by DHCP automatically. Well it worked for me!

AOL doesn’t provide a full-on two-way Internet connection, but it probably does what most domestic users want and if they’re caught in a twelve-month contract there’s no sense in cancelling early.

E7Even

I’ll try not to say “I told you so”, but e7even (aka e7broadband) has ceased providing any kind of service to its customers. Has it gone bust? No. It seems to have done a deal to let Mr Marrocco (186k) take over their customers – they won’t give the MAC to anyone else. For another ADSL provider to take over a line from another provider you need a MAC (Migration Authorisation Code) and guess what? E7even aren’t providing one of those either. It seems doubtful that the customers that paid up-front will be receiving a refund.

E7even was the cheapest ADSL provider by quite a large margin. When they launched their customers felt they had a bargain – it did work quite well. The rest of us figured out that they’d either be unable to provide proper backup at that price; had swung a fantastic wholesale deal; or had found a sure-fire way of going bust.

As time passed there were signs of disagreements and problems with E7even’s wholesale suppliers (yes, they had more than one) and the whole thing started to fall apart.

Now E7even’s customers are faced with either losing their service (their money already seems to have gone) or sign up with Mr Marrocco for a high-priced alternative. I’ve seen nothing to prove that 186k is capable of supporting retail ADSL users. As a company it’s seems to be going around with a pot of money and buying everything it can.

This story will, no doubt, roll on for some time to come.

Why won’t my IAR compiler work past 2000? – UBROF bug

If you check out IAR’s web site you’d be forgiven for thinking that IAR compilers had no problems with dates past 2000. You’d be quite wrong – they’ve got more Y2K bugs than a termite hill and they’re too shy to tell you about them.

It’s true that most tools since late 1998 are fixed but pretty much all the older ones have the same set of funnies. Most listings will be dated 22/Jun/102; the ‘C’ __DATE__ macro has a similar amusing effect, and so does the DATE 6 equivalent in the assembler. Embarrassing but not fatal, although it would have been nice if they’d owned up to the world on their web site.

However, if you’re using the IAR debug object format, UBROF, you may be in for a much worse surprise. The UBROF format has a header containing the link time and date. This is also messed up, such that several debuggers are known to reject files linked post-2000 due to invalid header information. This isn’t a bug in the debugger

IAR’s solution is to upgrade. Well they would say that, wouldn’t they? You don’t fancy jumping your compiler version on three years? Rather stick with the devil you know? Then download iarfix.com now. Simply run this on your output file after the linker has done its stuff and it’ll fix up the header and anything else it can find that might be wrong with it. You can even give it a wildcard file spec if you have a directory full of stuff that chokes your debugger.

It’s not supported, not guaranteed and not properly tested but you’re welcome to try it. If it doesn’t do it for you then let me know and I’ll think about updating it – but there have been no complaints in the last twelve months. If you’re the type that really must have a support contract for ISO9000 reasons then I’ll sell you one for £1000 a year and make damn sure it works for you. Still interested? I thought not. Enjoy!

As a final kick in the teeth, IAR managed to release a few disastrous ‘compliance’ updates, some of which have made it into the wild. They fix the embarrassing listing problems but, for some inexplicable reason, stop and catch fire when asked to read or write to a file with a year stamp of 2000 (including ones that it has just opened itself). Was a complete mystery why how or why they could have coded their file handling code in such a way that the date mattered, and even more of a mystery why they didn’t notice it when they tested it. Nice once guys! If you wait until 2001 then these rogue tools start working again without any apparent problems.

I’ve now disassembled one of their iffy compilers if anyone’s interested What on earth did IAR do to break their compiler?

Finally, if anyone from IAR in Sweden is reading this and thinks I’m being a bit hard on them – think about this: If you disclosed this information on your web site instead of pretending that everything was okay then none of this would have been necessary. Your customers are going to find out soon enough anyway, and when they do you’re going to look even worse.

(Originally published as www.fjl.co.uk/answers/faq/q3.htm)

What on earth did IAR do to break their compiler?

Some IAR compilers have an horrendous year-2000 bug. It took me about 30 minutes to disassemble one of their compilers and track down what they’d done wrong.

Basically, for some reason I don’t have the inclination to figure out, all file-open and file-close operations go through one of their own weird routines that wraps around the POSIX open() and creat() functions, which are themselves wrappers for the Windows equivalent. As part of this pantomime the date stamp is obtained. What they’re actually doing is loading the date stamp year portion (which is the year offset from 1900) with 100 before making the call and checking to see it isn’t still 100 when it returns. If it is, they assume that the open/creat process has failed somewhere because no new year was loaded. The only snag, of course, is that 2000 is actually 100 years from 1900 – someone obviously assumed it’d wrap to 00.

You can easily patch this problem out by changing the rogue value to 0xff or similar if you feel so inclined. To find it just start with the OpenFile() dynamic link in the executable (we’re talking Win32 exe here), look to see what calls it. This looks like a standard library the open() function. Then look to see what calls that (the weird IAR function). Inside look for where 100dec is loaded into a structure and replace it with something else. Don’t be tempted to play a little trick on your colleagues and time-bomb it for another year in the future.

I’d be most interested if someone with access to the source code could confirm or reject this explanation – in confidence of course!

(Originally published as www.fjl.co.uk/answers/faq/q3a.htm)