Recovery of a damaged SmartMedia card
with the Olympus MAUSB-2
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
(SCM Microelectroincs).
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):
| Address |
00h
|
01h
|
02h
|
03h
|
04h
|
05h
|
06h
|
07h
|
08h
|
09h
|
| Data |
01h
|
03h
|
D9h
|
01h
|
ffh
|
18h
|
02h
|
DFh
|
01h
|
20h
|
The data for a specification of a card's format
to be determined, no changes are permitted.
| Address |
59h
|
....
|
....
|
....
|
....
|
....
|
....
|
....
|
61h
|
| Data |
20h
|
20h
|
20h
|
20h
|
20h
|
20h
|
20h
|
20h
|
00h
|
Manufacturer's name (7 characters, in case of the
defaulted value there are gaps: 20h)
| Address |
67h
|
....
|
....
|
....
|
....
|
| Data |
20h
|
20h
|
20h
|
20h
|
00h
|
Product's name (4 characters, in case of the defaulted
value there are gaps: 20h)
| Address |
62h
|
....
|
....
|
....
|
....
|
| Data |
30h
|
2Eh
|
30h
|
00h
|
FFh
|
Product's version (0.0 at default)
For Olympus SmartMedia cards there are the following
values:
- Manufacturer's name:
- "OLYMPUS"
- Product's name:
- (for cards with "Panorama" mode) "PAN " (a gap (20h) after
letter "N")
- Product's version:
- "1.0"
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.
fig. 1
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!
fig. 2
fig. 3
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:
- SmartMedia™ Physical Format Specifications, SSFDC Forum Technical
Committee
- SMCardID v. 0.2 by David M. Pochron, Source code