Tuesday 17 December 2013

Windows 8 32 bit supports 16 bit MS-DOS apps

A lot of people are under the impression that MS-DOS applications are no longer supported under Windows 8. The 32bit version of Windows 8 does support 16 bit DOS apps.

I've recently been looking at updating a very old but useful FoxPro MS DOS App which we had been using on a creaky old Windows XP machine. Being a lot of effort to convert to a more modern framework I decided to investigate the possibility of using it on Windows 8. From past experience, I knew it would not work on the 64 bit version of Windows 7 so I assmumed the same was true of Windows 8.

To my surprise, it just worked on the 32 bit version of Windows 8 Professional! The only problem was that the keyboard layout was US not UK. Why can't Microsoft set the keyboard layout correctly given that it was a UK version of Windows 8 I installed, not an international version I don't know. To fix the keyboard layout problem all I neede to do was to edit the autoexec.nt and config.nt files (found in c:\windows\system32) just like in the old DOS days, by adding the lines detailed below.

CONFIG.NT
COUNTRY=044,850,C:\Windows\System32\COUNTRY.SYS

AUTOEXEC.NT
C:\Windows\System32\KB16 UK,850,C:\Windows\System32\KEYBOARD.SYS


Update 25-June-2020:
16 bit applications still work in Windows 10 32 bit pro.

Sunday 19 May 2013

Specifying TFS 2012 Express Database Location

Over the past few weeks I've been planning the migration of a number of source control repositories to new TFS 2012 repository.

I'm not sure how I'm going to handle the migration of the source files yet but I'll probably just check the existing sources into the new repository since keeping the history is not important.

Installing TFS 2012 Express edition was straight forward but it didn't set thing up as I wanted.

It installed the database into the programs files directory tree on the system drive which I didn't want since the system partition of my server does not have the majority of the free disk space and data should live on the data drive.

The easiest way I found to solve this issue was to install SQL Server Express 2012 before installing TFS 2012 Express. During the install of SQL Server Express 2012 you can easily set the location of the folder where it stores its databases. Once SQL Express 2012 was installed, you install TFS and it finds the instance of SQL Server Express 2012 you just installed and uses it and puts its collection databases in the SQL Server instance's default database directory.