Technical information
© Jean Louis-Guérin – V1.2a – September 2014 Page 13 / 69
Chapter 3. TOS/GEMDOS Limitations
We have seen that the file system used to partition a hard disk introduces some limitation. On top of
that the TOS/GEMDOS OS adds more limitations which are different for different versions of TOS and
GEMDOS. The following sections present some of these limitations.
3.1 TOS and Long File Name (LFN)
On Atari the file names recognized by TOS/GEMDOS system are limited to 8+3 Characters. Before
transferring files from a PC to an Atari you have to make sure that all files and folders names are
following the 8+3 specification and contains only capital letters. A PC tool like Total Commander can
help you for that matter. If you do not follow these two constraints you may get unexpected
behaviors.
Of course this problem only applies to the DOS or TOS&DOS partitions that are accessible on a PC
as it is not possible to create such files on a TOS system. The long file names on FAT16 partitions are
stored using special invalid entries in the directory table that TOS do not understand, and therefore do
not handle correctly.
If a partition contains files with long file name watch out for the
following problems:
If you ask for the size of a folder (or drive) containing LFN, with
for example the desktop “File Info …” you will get a large and
erroneous number for the size of a tree. The number can get
so huge (resulting in an overflow) that invalid character will
show up in the size field (see picture - Taille is Size in French).
If a program tries to copy a directory that contains LFN it will
probably complains of not being able to access files with
strange name and terminates. This is the case for example if
you try to copy this kind of directory by dragging and dropping
it from the desktop. In this case the copy is done partially with
a very brief error message and the copy operation terminates prematurely.
If you delete a file with a long file name the directory structure will get corrupted (it will contains
invalid entries left over that won’t be understood even by Windows).
Note that BigDOS fix the problem of LFN for DOS/FAT or TOS&DOS partitions. You won’t be able to
see Long File Names on the Atari but they will be handled correctly if BigDOS has been loaded.
Technical details:
If you are interested by technical details you can read the rest of this section (see also DOS/FAT Long
file names for more information)
Here is an example of the content of the directory table with long file name:
Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F
0002A000 53 48 4F 52 54 20 20 20 54 58 54 20 00 0F 9B 81 SHORT TXT ..›•
0002A010 8D 3B 8D 3B 00 00 A0 8C 8C 3B 02 00 0E 00 00 00 •;•;.. ŒŒ;......
0002A020 44 54 00 58 00 54 00 00 00 FF FF 0F 00 43 FF FF DT.X.T...ÿÿ..Cÿÿ
0002A030 FF FF FF FF FF FF FF FF FF FF 00 00 FF FF FF FF ÿÿÿÿÿÿÿÿÿÿ..ÿÿÿÿ
0002A040 03 52 00 59 00 20 00 4C 00 4F 00 0F 00 43 4E 00 .R.Y. .L.O...CN.
0002A050 47 00 20 00 4E 00 41 00 4D 00 00 00 45 00 2E 00 G. .N.A.M...E...
0002A060 02 41 00 4D 00 50 00 4C 00 45 00 0F 00 43 20 00 .A.M.P.L.E...C .
0002A070 4F 00 46 00 20 00 41 00 20 00 00 00 56 00 45 00 O.F. .A. ...V.E.
0002A080 01 54 00 48 00 49 00 53 00 20 00 0F 00 43 49 00 .T.H.I.S. ...CI.
0002A090 53 00 20 00 41 00 4E 00 20 00 00 00 45 00 58 00 S. .A.N. ...E.X.
0002A020 54 48 49 53 49 53 7E 31 54 58 54 20 00 92 9D 81 THISIS~1TXT .’••
0002A0B0 8D 3B 8D 3B 00 00 A0 8C 8C 3B 03 00 0E 00 00 00 •;•;.. ŒŒ;......
0002A0C0 53 48 4F 52 54 46 4C 44 20 20 20 10 00 72 A3 81 SHORTFLD ..r£•
0002A0D0 8D 3B 8D 3B 00 00 A4 81 8D 3B 04 00 00 00 00 00 •;•;..¤••;......
0002A0E0 42 41 00 4D 00 45 00 00 00 FF FF 0F 00 68 FF FF BA.M.E...ÿÿ..hÿÿ
0002A0F0 FF FF FF FF FF FF FF FF FF FF 00 00 FF FF FF FF ÿÿÿÿÿÿÿÿÿÿ..ÿÿÿÿ
0002A100 01 4C 00 4F 00 4E 00 47 00 20 00 0F 00 68 46 00 .L.O.N.G. ...hF.
0002A110 4F 00 4C 00 44 00 45 00 52 00 00 00 20 00 4E 00 O.L.D.E.R... .N.
0002A120 4C 4F 4E 47 46 4F 7E 31 20 20 20 10 00 4E A7 81 LONGFO~1 ..N§•
0002A130 8D 3B 8D 3B 00 00 A8 81 8D 3B 05 00 00 00 00 00 •;•;..¨••;......
0002A140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................