It is not only Windows that hungs
Attention! The author will not take responsibility for any damage that may be caused by the procedure described hereinafter.
Once I got involved into an unpleasant incident: my digital camera hang ignoring pushing any buttons including a power button. The problem was solved by drawing out batteries and inserting them again, however the camera displayed "Card Error" and refused working with a SmartMedia card. I tried to format it, but the camera kept its strong position displaying "Card Error". A trial to read the card in a reading device Olympus MAUSB-2 failed. That is why it was doubtful that the card was damaged, and the only I could surmise was that CIS contents (Card Information Structure) was destroyed.
Such trouble can occur, for example, if you use a SmartMedia card in portable MP3 players such as the Diamond Rio, which implements formatting of a card and change the CIS breaking SmartMedia™ Physical Format Specification from SSFDC Forum Technical Committee. The only way to recover the format was a formatting the card with the RioDiag utility. If a SmartMedia card is produced by Olympus, the "Panorama" mode can be recovered with this program. But in this case you need an abovementioned MP3 player which I had not. The archives of the UseNet didn't helped either. I only found out that owners of FujiFilm digital cameras also face some troubles with wrong formatting of memory cards. Olympus didn't care for inclusion of a program for card formatting into Windows 9x drivers.
The only way left was to find a program for a physical
formatting from an actual manufacturer, assuming that Olympus didn't
produce a chipset of MAUSB-2 adapter. Opening of the adapter revealed
that the chips are produced by Shuttletech
Fortunately, the drivers from SCM Microelectronics include a program for a logical formatting which can recover a card's physical format in case the CIS is damaged. Since the formatting utility didn't work with Olympus drivers we had to delete MAUSB-2 drivers, delete olyossm.inf file in Windows/INF/Other, reboot the computer and install drivers from SCM Microelectronics.
If any information in CIS field is damaged the Smprep program reveals it and suggests recovering it according to the specification.
After formatting, my card was able to work and was normally recognized by the camera but in the Olympus card the "Panorama" mode didn't work anymore. Why is it so?
A little bit of theory
According to the SSFDC specification each Smartmedia card is formatted at two levels: physical and logical. A logical level means recording of information on a partition table, a boot sector and a FAT table, whereas a physical level means recording of information for determination of a card's type, its manufacturer and necessary data in order the card could react on an ATA-interface instruction "Identify Drive" (of the CIS table). Two CIS copies are recorded on a card. Note that Olympus digital cameras can implement only logical formatting of memory cards. Therefore we can assume that the information on a manufacturer was deleted in a course of formatting the card with the Smprep program.
These data are kept in a zero physical block in the card (default values which the manufacturer allowed to change are on a grey background):
The data for a specification of a card's format to be determined, no changes are permitted.
Manufacturer's name (7 characters, in case of the defaulted value there are gaps: 20h)
Product's name (4 characters, in case of the defaulted value there are gaps: 20h)
Product's version (0.0 at default)
For Olympus SmartMedia cards there are the following values:
Fortunately, the both CIS copies in the Smprep program are open and therefore they can be modified (see fig. 1, the CIS copies are yellow marked). So, we can recover the "Panorama" mode by writing the required parameters on the manufacturer. You have to modify only the first copy of the CIS, as it is shown on the fig. 2. Though according to strict rules you have to modify the second CIS copy as well, according to fig. 3.
But there are some troubles. As you can remember the Smartmedia card had been recovered already, and having checked the contents of the first ten bytes ( 01h, 03h, D9h, 01h, FFh, 18h, 02h, DFh, 01h, 20h) the program considers the card to be serviceable and refuses writing the CIS copies changed by us. So, we had to damage it once more. The simplest way to do it is to change the first byte in the both CIS copies - for example, to replace 01 by 02. For the current version of the Smprep it is 22FE8h and 230E8h addresses, relatively. For this procedure you should make a separate copy of the Smprep program. The program will reveal a wrong CIS and recover it in a "wrong" form. After that you should start the prepared version of the Smprep with the written parameters of the manufacturer, and the program will notify on a necessity of CIS recovery. After that the camera will allow to enable and use the "Panorama" mode!
In conclusion I should note that I do not recommend to fulfill these operations on serviceable SmartMedia cards which have guarantee of the seller, as well as to enable "Panorama" mode on cards from the third manufacturers. Besides you should note that the above addresses can change according to the version of a formatting program. It's worth noting that the above operations would not work under Windows 2000, unlike Windows 9x, since due to the driver's restrictions the Smprep program can implement only a logical formatting of a card.
The used materials:
Write a comment below. No registration needed!