Home » Archimedes archive » Acorn User » AU 1996-03 B.adf » Features » Fsck_130/MapExpl
Fsck_130/MapExpl
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Acorn User » AU 1996-03 B.adf » Features |
Filename: | Fsck_130/MapExpl |
Read OK: | ✔ |
File size: | 3594 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
This file is aimed at all the people who want to understand more about disc maps without going deeply into technical speech. If you have just some questions you can try to read the "Possible Questions" section and ignore the rest. This file will only deal with new format maps (E-Format) since the old ones (D-Format) are completely out-of-date. E-Format map, an easy explanation (I hope!) ------------------------------------------- Before starting with the map itself, we have to speak about files and disc structure. Each file on a disc (including directories) can be identified from a SIN (System Internal Number) that is stored together with all the other file informations (name, filetype, size, etc.) in the directory that contains the file. The SIN is made up by two parts, the file number (or file ID) and the sector offset (more on this next). The disc (HD or floppy) is physically made up by a number of heads (2 for floppies), tracks and sectors per track. RISC OS will generally ignore this and will consider the disc as a consecutive sequence of sectors. The map of an E-Format disc is divided into zones: each zone represents a number of consecutive sectors and can be considered as a stand-alone entity. So, unless specified, the map format can be applied in the same way to both single-zone discs (like 800K floppies) and multi-zone ones. Note that there are no relations between the physical disc structure (ie. number of heads, tracks, etc.) and the zones subdivision. On each disc there are 2 copies of the map (one is taken as a backup): quite ironically the 2 maps are (obviously!) always identical, so if the first is corrupted the second is of no use. The second map can be useful only if the first one has been physically damaged but (apparently) RISC OS always reads the first and ignores the other... Each zone consists of a list of blocks of variable length, each one representing an occupied or a free part of the disc; the formers contain the file numbers (ie. the first part of a SIN) and the latters contain a link to the next free-space block. If you know the SIN of a file, you can easily find out where it is located in the zone and so you can know the exact position of the file on the disc (ie. the disc address). The same file number can appear in more than one block, in the same or in different zones, if a file is fragmented in small chunks; this way you can also have files that straddle across two or more zones. Sometimes two or more files have the same file number but different sector offset (ie. the second part of a SIN): this means that in the map they appear to be a single file (occupying only one block) but, knowing the SIN, it is possible to find out the right address of each one. This trick is useful to avoid a lot of disc space wasting: because of the organization of the map, each block must occupy a minimum fixed length (that generally depends on the size of the HD) and so, even if the file is really short, it has to use up some extra disc space. Thanks to the sector offsets, a lot of small files can share the same block (thus the same file number) but each one could only use the size of a physical sector. I tried to explain the map structure in a simplified way, without going deeply into the real data structure (bit streams, checksums, etc.), but I think I said enough to allow you to understand: What can go wrong ----------------- Obviously the above structure is really rigid and there is no place for errors!�Unfortunately errors always occur because of unexpected power down, system crashes, physical damages, (errors in FileCore module itself?), etc; this is a list of possible problems: - different file lengths in map and directory: if the allocated length in the map is more than the one in the directory you can ignore this (but you have some lost space) but in the opposite case RISC OS generally crashes if you try to load the file. - a file number is allocated in the map but not in the directory structure: you have some space occupied in the map by an non-existent file. - a file has a file number that isn't allocated in the map: generally RISC OS hangs the computer if you try to load the file. - the free space linked list is broken: there is some free space that isn't linked with the others, thus it is lost (it is no more free...). In these cases (except in the ones that make RISC OS to crash) *CheckMap reports an inconsistency. Unfortunately there is a worse case: - the checksum of one or more zones is wrong: in this case (apparently easy to fix) RISC OS isn't able to recognise the disc properly. Using a Disc Doctor tool it should be possible to manually fix the problem. Another quite common error (not directly related to the map) is: - broken directory: this error is issued when RISC OS finds a directory that has some 'strange' data in it (no directory identifier, wrong checksum, etc.). The only way to cure this is to remove the directory from its parent but unfortunately this is impossible using standard commands (wipe, delete, remove). Broken directories usually lead to inconsistent maps because all the files contained in them disappear from the directory structure but not from the map (see above). What can be wasted ------------------ Because of the disc structure and the map organization, some space can be 'naturally' wasted. First of all, the sector bounds are a physical limit and so all the files must be 'sector aligned'. So, on a 512 bytes sector sized HD, a 1 byte file always uses (at least) 512 bytes, while a 513 bytes one uses 1024 bytes. But the real waste of space is caused by the map organization: as I already said, there is a minimun length for each map block (from now I will consider it to be 4K but note that this is only an example). This is not so bad because more than one file can share it, hence 4*1K files can fill up the same block wasting no space. The bad point is that only files in the same directory can share blocks, so 4*1K files in 4 different directories will use 16K. A directory always needs 2K of disc space to keep its data. Since a directory from the map point of view is just a file, it will still use 4K: fortunately it can share the remaining 2K with files contained in it (not with files from its parent). If a directory contains a 2K file or 2*1K files all the space is used but if it contains only files longer than 2K the space will be wasted. Wasted space isn't lost space: if you have an empty directory you will waste 2K. But when you delete it you will regain the whole 4K, no loss. If you save a 1K file in it, the free space on your disc will remain the same and the wasted space will be just 1K. During normal operations, there is no way to avoid wasting space: RISC OS does all the work and you don't have to worry about the file allocation strategy. Anyway, sometimes you can recover some wasted space by simply copying a file, deleting the original one and renaming the new one as the old one (usually it is better to copy the whole content of a directory to another and then rename the whole directory back) but don't expect too much gain... *CheckMap and *Compact ---------------------- CheckMap performs quite a simple task: it just scans the directory tree and checks that all the file numbers in the map are actually contained in a directory. Considering that CheckMap should be used when something went wrong, it seems to be a very poorly written piece of code: sometimes it hangs the whole computer, sometimes it just prints the cryptic message "Map inconsistent with directory tree" and the only action that it should do to fix the situation is the swapping between the 2 copies of the map (but see above to understand why nobody has never been able to use this facility...). Compact has been a very useful command when the only way to format discs was D-Format: in fact with E-Format discs it is almost useless. Its function is to collect together fragmented files or fragmented free space inside zones (but not from one zone to another). With E-Format discs this operation is performed automatically when a new file is saved in that zone, but you can anyway use it 'manually' to speed up future savings (actually the speed gain is almost irrelevant). With D-Format discs the 'auto-compaction' doesn't exist and files cannot be fragmented: if there is enough space on the disc for the file that has to be saved but this free space is fragmented in small chunks, the error "Compaction required" is issued. Possible Questions ------------------ 1) Is *Compact useful or it is dangerous? 2) Can I trust *CheckMap? 3) What can I do with a broken directory or an undeletable file? 4) What can I do if *CheckMap doesn't work or tells me that the map is inconsistent? 5) Are there some dangerous actions that can lead to a map corruption? 6) Does a map corruption imply that some data on the disc has been corrupted too? 7) How can I find if my disc is E-Format? 8) Is there some program that can be used to unfragment the disc? Possible Answers... ------------------- 1) Is *Compact useful or it is dangerous? On E-Format discs *Compact isn't really useful but it can be used safely if the map is good. If the map is inconsistent I can't assure you of its behaviour (ie. I can't exclude that it can cause worse corruptions). Note that RISC OS can automatically run a 'subset' of Compact when it has to save a file (especially if the file is large and the free space is limited and fragmented). 2) Can I trust *CheckMap? I have to admit that CheckMap isn't a very well written command but if it says that the map is good, the map IS good and you have no lost space on your disc. If it crashes the computer or if it says "Map inconsistent with directory tree", your map or directory structure IS damaged and the damage can worsen if not cured soon. 3) What can I do with a broken directory or an undeletable file? A broken directory cannot be deleted using standard OS commands and it can just be considered as a 'normal' undeletable file. To remove it you must use some directory manipulation program (like Look System's Disc Doctor?) or the shareware programs 'eliminate' (distributed with 'fsck') or 'FSCK�'. 4) What can I do if *CheckMap doesn't work or tells me that the map is inconsistent? Apparently the only thing you can do is to try the shareware program 'fsck' (or the new 'FSCK�') that performs the same task as *CheckMap but also tries to fix the damage. 5) Are there some dangerous actions that can lead to a map corruption? I am not the only person who thinks that having a nearly full HD (say, less than 1Mb free) can be dangerous, especially if you handle very large files. Using bugged programs that sometimes can crash the computer while it is writing to the HD is REALLY dangerous but fortunately there are very few programs of this kind around... 6) Does a map corruption imply that some data on the disc has been corrupted too? Generally no. For example if the corruption was caused by a delete operation that was interrupted after it removed the file from the directory but before the removal from the map, the map will be inconsistent but no data has been lost/overwritten. On the other hand, a 'Broken Directory' can be the evident sign that something actually has been corrupted on the disc, so you can find that some other files are damaged. In fact, RISC OS can easily notice the wrong directory header/checksum but it cannot really understand if a text file has been corrupted! 7) How can I find if my disc is E-Format? You can use the command *Map. If it says "new map" you have an E-Format disc, otherwise you have an old D-Format disc. When you use *Map, be sure to be in the correct file system, eventually use the command "XXXXX:Map" where XXXXX is the name of the file system (ie. IDEFS, ADFS, SCSI, etc.). If the *Map command doesn't exist, your file system isn't FileCore based (like MemFS, ArcFS, SparkFS), so what is described in this file can't be applied to it. 8) Is there some program that can be used to unfragment the disc? No. However, such a program will not be completely useful since RISC OS already tries keep files unfragmented. The *Compact command can be useful to unfragment the free space (and sometimes the files too) inside a zone. A similar program (but more useful) should be able to move the most used files (but only the ones that are not continually updated) near the middle of the disc (ie. near the root directory) but this will require a lot of time, is generally dangerous and will not provide (probably) a great improvement in disc access time. ------------------------------------------------------------------------------ I'd like to thank all the people who contributed to produce a 'working' version of this document. ------------------------------------------------------------------------------ If you have any other question related to HD map, structure, directories, etc. you can contact me or post to comp.sys.acorn.*. Any interesting question will be added to the "Possible questions". Note that I can be wrong, inexact and vague, so any correction is welcome. If you think that this file is useless ignore it, if you think it is badly written, vague, etc. please contact me, possibly with some amendment. An HTML version of this document is available at: http://cdc8g5.cdc.polimi.it/~pel0015/MapExpl.html I can be contacted at the following address: pel0015@cdc8g5.cdc.polimi.it If you don't receive a reply (or if the message is bounced) I can also be contacted at: sergio@freebsd.first.gmd.de WWW: http://cdc8g5.cdc.polimi.it/~pel0015/
00000000 54 68 69 73 20 66 69 6c 65 20 69 73 20 61 69 6d |This file is aim| 00000010 65 64 20 61 74 20 61 6c 6c 20 74 68 65 20 70 65 |ed at all the pe| 00000020 6f 70 6c 65 20 77 68 6f 20 77 61 6e 74 20 74 6f |ople who want to| 00000030 20 75 6e 64 65 72 73 74 61 6e 64 20 6d 6f 72 65 | understand more| 00000040 20 61 62 6f 75 74 20 64 69 73 63 0a 6d 61 70 73 | about disc.maps| 00000050 20 77 69 74 68 6f 75 74 20 67 6f 69 6e 67 20 64 | without going d| 00000060 65 65 70 6c 79 20 69 6e 74 6f 20 74 65 63 68 6e |eeply into techn| 00000070 69 63 61 6c 20 73 70 65 65 63 68 2e 20 49 66 20 |ical speech. If | 00000080 79 6f 75 20 68 61 76 65 20 6a 75 73 74 20 73 6f |you have just so| 00000090 6d 65 0a 71 75 65 73 74 69 6f 6e 73 20 79 6f 75 |me.questions you| 000000a0 20 63 61 6e 20 74 72 79 20 74 6f 20 72 65 61 64 | can try to read| 000000b0 20 74 68 65 20 22 50 6f 73 73 69 62 6c 65 20 51 | the "Possible Q| 000000c0 75 65 73 74 69 6f 6e 73 22 20 73 65 63 74 69 6f |uestions" sectio| 000000d0 6e 20 61 6e 64 20 69 67 6e 6f 72 65 20 74 68 65 |n and ignore the| 000000e0 0a 72 65 73 74 2e 0a 0a 54 68 69 73 20 66 69 6c |.rest...This fil| 000000f0 65 20 77 69 6c 6c 20 6f 6e 6c 79 20 64 65 61 6c |e will only deal| 00000100 20 77 69 74 68 20 6e 65 77 20 66 6f 72 6d 61 74 | with new format| 00000110 20 6d 61 70 73 20 28 45 2d 46 6f 72 6d 61 74 29 | maps (E-Format)| 00000120 20 73 69 6e 63 65 20 74 68 65 20 6f 6c 64 20 6f | since the old o| 00000130 6e 65 73 0a 28 44 2d 46 6f 72 6d 61 74 29 20 61 |nes.(D-Format) a| 00000140 72 65 20 63 6f 6d 70 6c 65 74 65 6c 79 20 6f 75 |re completely ou| 00000150 74 2d 6f 66 2d 64 61 74 65 2e 0a 0a 0a 45 2d 46 |t-of-date....E-F| 00000160 6f 72 6d 61 74 20 6d 61 70 2c 20 61 6e 20 65 61 |ormat map, an ea| 00000170 73 79 20 65 78 70 6c 61 6e 61 74 69 6f 6e 20 28 |sy explanation (| 00000180 49 20 68 6f 70 65 21 29 0a 2d 2d 2d 2d 2d 2d 2d |I hope!).-------| 00000190 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| * 000001b0 2d 2d 2d 2d 0a 0a 42 65 66 6f 72 65 20 73 74 61 |----..Before sta| 000001c0 72 74 69 6e 67 20 77 69 74 68 20 74 68 65 20 6d |rting with the m| 000001d0 61 70 20 69 74 73 65 6c 66 2c 20 77 65 20 68 61 |ap itself, we ha| 000001e0 76 65 20 74 6f 20 73 70 65 61 6b 20 61 62 6f 75 |ve to speak abou| 000001f0 74 20 66 69 6c 65 73 20 61 6e 64 20 64 69 73 63 |t files and disc| 00000200 0a 73 74 72 75 63 74 75 72 65 2e 0a 0a 45 61 63 |.structure...Eac| 00000210 68 20 66 69 6c 65 20 6f 6e 20 61 20 64 69 73 63 |h file on a disc| 00000220 20 28 69 6e 63 6c 75 64 69 6e 67 20 64 69 72 65 | (including dire| 00000230 63 74 6f 72 69 65 73 29 20 63 61 6e 20 62 65 20 |ctories) can be | 00000240 69 64 65 6e 74 69 66 69 65 64 20 66 72 6f 6d 20 |identified from | 00000250 61 20 53 49 4e 0a 28 53 79 73 74 65 6d 20 49 6e |a SIN.(System In| 00000260 74 65 72 6e 61 6c 20 4e 75 6d 62 65 72 29 20 74 |ternal Number) t| 00000270 68 61 74 20 69 73 20 73 74 6f 72 65 64 20 74 6f |hat is stored to| 00000280 67 65 74 68 65 72 20 77 69 74 68 20 61 6c 6c 20 |gether with all | 00000290 74 68 65 20 6f 74 68 65 72 20 66 69 6c 65 0a 69 |the other file.i| 000002a0 6e 66 6f 72 6d 61 74 69 6f 6e 73 20 28 6e 61 6d |nformations (nam| 000002b0 65 2c 20 66 69 6c 65 74 79 70 65 2c 20 73 69 7a |e, filetype, siz| 000002c0 65 2c 20 65 74 63 2e 29 20 69 6e 20 74 68 65 20 |e, etc.) in the | 000002d0 64 69 72 65 63 74 6f 72 79 20 74 68 61 74 20 63 |directory that c| 000002e0 6f 6e 74 61 69 6e 73 20 74 68 65 0a 66 69 6c 65 |ontains the.file| 000002f0 2e 20 54 68 65 20 53 49 4e 20 69 73 20 6d 61 64 |. The SIN is mad| 00000300 65 20 75 70 20 62 79 20 74 77 6f 20 70 61 72 74 |e up by two part| 00000310 73 2c 20 74 68 65 20 66 69 6c 65 20 6e 75 6d 62 |s, the file numb| 00000320 65 72 20 28 6f 72 20 66 69 6c 65 20 49 44 29 20 |er (or file ID) | 00000330 61 6e 64 20 74 68 65 0a 73 65 63 74 6f 72 20 6f |and the.sector o| 00000340 66 66 73 65 74 20 28 6d 6f 72 65 20 6f 6e 20 74 |ffset (more on t| 00000350 68 69 73 20 6e 65 78 74 29 2e 0a 0a 54 68 65 20 |his next)...The | 00000360 64 69 73 63 20 28 48 44 20 6f 72 20 66 6c 6f 70 |disc (HD or flop| 00000370 70 79 29 20 69 73 20 70 68 79 73 69 63 61 6c 6c |py) is physicall| 00000380 79 20 6d 61 64 65 20 75 70 20 62 79 20 61 20 6e |y made up by a n| 00000390 75 6d 62 65 72 20 6f 66 20 68 65 61 64 73 20 28 |umber of heads (| 000003a0 32 20 66 6f 72 0a 66 6c 6f 70 70 69 65 73 29 2c |2 for.floppies),| 000003b0 20 74 72 61 63 6b 73 20 61 6e 64 20 73 65 63 74 | tracks and sect| 000003c0 6f 72 73 20 70 65 72 20 74 72 61 63 6b 2e 20 52 |ors per track. R| 000003d0 49 53 43 20 4f 53 20 77 69 6c 6c 20 67 65 6e 65 |ISC OS will gene| 000003e0 72 61 6c 6c 79 20 69 67 6e 6f 72 65 20 74 68 69 |rally ignore thi| 000003f0 73 0a 61 6e 64 20 77 69 6c 6c 20 63 6f 6e 73 69 |s.and will consi| 00000400 64 65 72 20 74 68 65 20 64 69 73 63 20 61 73 20 |der the disc as | 00000410 61 20 63 6f 6e 73 65 63 75 74 69 76 65 20 73 65 |a consecutive se| 00000420 71 75 65 6e 63 65 20 6f 66 20 73 65 63 74 6f 72 |quence of sector| 00000430 73 2e 0a 0a 54 68 65 20 6d 61 70 20 6f 66 20 61 |s...The map of a| 00000440 6e 20 45 2d 46 6f 72 6d 61 74 20 64 69 73 63 20 |n E-Format disc | 00000450 69 73 20 64 69 76 69 64 65 64 20 69 6e 74 6f 20 |is divided into | 00000460 7a 6f 6e 65 73 3a 20 65 61 63 68 20 7a 6f 6e 65 |zones: each zone| 00000470 20 72 65 70 72 65 73 65 6e 74 73 20 61 0a 6e 75 | represents a.nu| 00000480 6d 62 65 72 20 6f 66 20 63 6f 6e 73 65 63 75 74 |mber of consecut| 00000490 69 76 65 20 73 65 63 74 6f 72 73 20 61 6e 64 20 |ive sectors and | 000004a0 63 61 6e 20 62 65 20 63 6f 6e 73 69 64 65 72 65 |can be considere| 000004b0 64 20 61 73 20 61 20 73 74 61 6e 64 2d 61 6c 6f |d as a stand-alo| 000004c0 6e 65 20 65 6e 74 69 74 79 2e 0a 53 6f 2c 20 75 |ne entity..So, u| 000004d0 6e 6c 65 73 73 20 73 70 65 63 69 66 69 65 64 2c |nless specified,| 000004e0 20 74 68 65 20 6d 61 70 20 66 6f 72 6d 61 74 20 | the map format | 000004f0 63 61 6e 20 62 65 20 61 70 70 6c 69 65 64 20 69 |can be applied i| 00000500 6e 20 74 68 65 20 73 61 6d 65 20 77 61 79 20 74 |n the same way t| 00000510 6f 20 62 6f 74 68 0a 73 69 6e 67 6c 65 2d 7a 6f |o both.single-zo| 00000520 6e 65 20 64 69 73 63 73 20 28 6c 69 6b 65 20 38 |ne discs (like 8| 00000530 30 30 4b 20 66 6c 6f 70 70 69 65 73 29 20 61 6e |00K floppies) an| 00000540 64 20 6d 75 6c 74 69 2d 7a 6f 6e 65 20 6f 6e 65 |d multi-zone one| 00000550 73 2e 0a 4e 6f 74 65 20 74 68 61 74 20 74 68 65 |s..Note that the| 00000560 72 65 20 61 72 65 20 6e 6f 20 72 65 6c 61 74 69 |re are no relati| 00000570 6f 6e 73 20 62 65 74 77 65 65 6e 20 74 68 65 20 |ons between the | 00000580 70 68 79 73 69 63 61 6c 20 64 69 73 63 20 73 74 |physical disc st| 00000590 72 75 63 74 75 72 65 20 28 69 65 2e 0a 6e 75 6d |ructure (ie..num| 000005a0 62 65 72 20 6f 66 20 68 65 61 64 73 2c 20 74 72 |ber of heads, tr| 000005b0 61 63 6b 73 2c 20 65 74 63 2e 29 20 61 6e 64 20 |acks, etc.) and | 000005c0 74 68 65 20 7a 6f 6e 65 73 20 73 75 62 64 69 76 |the zones subdiv| 000005d0 69 73 69 6f 6e 2e 0a 0a 4f 6e 20 65 61 63 68 20 |ision...On each | 000005e0 64 69 73 63 20 74 68 65 72 65 20 61 72 65 20 32 |disc there are 2| 000005f0 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 6d | copies of the m| 00000600 61 70 20 28 6f 6e 65 20 69 73 20 74 61 6b 65 6e |ap (one is taken| 00000610 20 61 73 20 61 20 62 61 63 6b 75 70 29 3a 20 71 | as a backup): q| 00000620 75 69 74 65 0a 69 72 6f 6e 69 63 61 6c 6c 79 20 |uite.ironically | 00000630 74 68 65 20 32 20 6d 61 70 73 20 61 72 65 20 28 |the 2 maps are (| 00000640 6f 62 76 69 6f 75 73 6c 79 21 29 20 61 6c 77 61 |obviously!) alwa| 00000650 79 73 20 69 64 65 6e 74 69 63 61 6c 2c 20 73 6f |ys identical, so| 00000660 20 69 66 20 74 68 65 20 66 69 72 73 74 20 69 73 | if the first is| 00000670 0a 63 6f 72 72 75 70 74 65 64 20 74 68 65 20 73 |.corrupted the s| 00000680 65 63 6f 6e 64 20 69 73 20 6f 66 20 6e 6f 20 75 |econd is of no u| 00000690 73 65 2e 20 54 68 65 20 73 65 63 6f 6e 64 20 6d |se. The second m| 000006a0 61 70 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c |ap can be useful| 000006b0 20 6f 6e 6c 79 20 69 66 20 74 68 65 0a 66 69 72 | only if the.fir| 000006c0 73 74 20 6f 6e 65 20 68 61 73 20 62 65 65 6e 20 |st one has been | 000006d0 70 68 79 73 69 63 61 6c 6c 79 20 64 61 6d 61 67 |physically damag| 000006e0 65 64 20 62 75 74 20 28 61 70 70 61 72 65 6e 74 |ed but (apparent| 000006f0 6c 79 29 20 52 49 53 43 20 4f 53 20 61 6c 77 61 |ly) RISC OS alwa| 00000700 79 73 20 72 65 61 64 73 0a 74 68 65 20 66 69 72 |ys reads.the fir| 00000710 73 74 20 61 6e 64 20 69 67 6e 6f 72 65 73 20 74 |st and ignores t| 00000720 68 65 20 6f 74 68 65 72 2e 2e 2e 0a 0a 45 61 63 |he other.....Eac| 00000730 68 20 7a 6f 6e 65 20 63 6f 6e 73 69 73 74 73 20 |h zone consists | 00000740 6f 66 20 61 20 6c 69 73 74 20 6f 66 20 62 6c 6f |of a list of blo| 00000750 63 6b 73 20 6f 66 20 76 61 72 69 61 62 6c 65 20 |cks of variable | 00000760 6c 65 6e 67 74 68 2c 20 65 61 63 68 20 6f 6e 65 |length, each one| 00000770 0a 72 65 70 72 65 73 65 6e 74 69 6e 67 20 61 6e |.representing an| 00000780 20 6f 63 63 75 70 69 65 64 20 6f 72 20 61 20 66 | occupied or a f| 00000790 72 65 65 20 70 61 72 74 20 6f 66 20 74 68 65 20 |ree part of the | 000007a0 64 69 73 63 3b 20 74 68 65 20 66 6f 72 6d 65 72 |disc; the former| 000007b0 73 20 63 6f 6e 74 61 69 6e 0a 74 68 65 20 66 69 |s contain.the fi| 000007c0 6c 65 20 6e 75 6d 62 65 72 73 20 28 69 65 2e 20 |le numbers (ie. | 000007d0 74 68 65 20 66 69 72 73 74 20 70 61 72 74 20 6f |the first part o| 000007e0 66 20 61 20 53 49 4e 29 20 61 6e 64 20 74 68 65 |f a SIN) and the| 000007f0 20 6c 61 74 74 65 72 73 20 63 6f 6e 74 61 69 6e | latters contain| 00000800 20 61 0a 6c 69 6e 6b 20 74 6f 20 74 68 65 20 6e | a.link to the n| 00000810 65 78 74 20 66 72 65 65 2d 73 70 61 63 65 20 62 |ext free-space b| 00000820 6c 6f 63 6b 2e 20 49 66 20 79 6f 75 20 6b 6e 6f |lock. If you kno| 00000830 77 20 74 68 65 20 53 49 4e 20 6f 66 20 61 20 66 |w the SIN of a f| 00000840 69 6c 65 2c 20 79 6f 75 20 63 61 6e 0a 65 61 73 |ile, you can.eas| 00000850 69 6c 79 20 66 69 6e 64 20 6f 75 74 20 77 68 65 |ily find out whe| 00000860 72 65 20 69 74 20 69 73 20 6c 6f 63 61 74 65 64 |re it is located| 00000870 20 69 6e 20 74 68 65 20 7a 6f 6e 65 20 61 6e 64 | in the zone and| 00000880 20 73 6f 20 79 6f 75 20 63 61 6e 20 6b 6e 6f 77 | so you can know| 00000890 20 74 68 65 20 65 78 61 63 74 0a 70 6f 73 69 74 | the exact.posit| 000008a0 69 6f 6e 20 6f 66 20 74 68 65 20 66 69 6c 65 20 |ion of the file | 000008b0 6f 6e 20 74 68 65 20 64 69 73 63 20 28 69 65 2e |on the disc (ie.| 000008c0 20 74 68 65 20 64 69 73 63 20 61 64 64 72 65 73 | the disc addres| 000008d0 73 29 2e 0a 54 68 65 20 73 61 6d 65 20 66 69 6c |s)..The same fil| 000008e0 65 20 6e 75 6d 62 65 72 20 63 61 6e 20 61 70 70 |e number can app| 000008f0 65 61 72 20 69 6e 20 6d 6f 72 65 20 74 68 61 6e |ear in more than| 00000900 20 6f 6e 65 20 62 6c 6f 63 6b 2c 20 69 6e 20 74 | one block, in t| 00000910 68 65 20 73 61 6d 65 20 6f 72 20 69 6e 0a 64 69 |he same or in.di| 00000920 66 66 65 72 65 6e 74 20 7a 6f 6e 65 73 2c 20 69 |fferent zones, i| 00000930 66 20 61 20 66 69 6c 65 20 69 73 20 66 72 61 67 |f a file is frag| 00000940 6d 65 6e 74 65 64 20 69 6e 20 73 6d 61 6c 6c 20 |mented in small | 00000950 63 68 75 6e 6b 73 3b 20 74 68 69 73 20 77 61 79 |chunks; this way| 00000960 20 79 6f 75 20 63 61 6e 0a 61 6c 73 6f 20 68 61 | you can.also ha| 00000970 76 65 20 66 69 6c 65 73 20 74 68 61 74 20 73 74 |ve files that st| 00000980 72 61 64 64 6c 65 20 61 63 72 6f 73 73 20 74 77 |raddle across tw| 00000990 6f 20 6f 72 20 6d 6f 72 65 20 7a 6f 6e 65 73 2e |o or more zones.| 000009a0 0a 0a 53 6f 6d 65 74 69 6d 65 73 20 74 77 6f 20 |..Sometimes two | 000009b0 6f 72 20 6d 6f 72 65 20 66 69 6c 65 73 20 68 61 |or more files ha| 000009c0 76 65 20 74 68 65 20 73 61 6d 65 20 66 69 6c 65 |ve the same file| 000009d0 20 6e 75 6d 62 65 72 20 62 75 74 20 64 69 66 66 | number but diff| 000009e0 65 72 65 6e 74 20 73 65 63 74 6f 72 0a 6f 66 66 |erent sector.off| 000009f0 73 65 74 20 28 69 65 2e 20 74 68 65 20 73 65 63 |set (ie. the sec| 00000a00 6f 6e 64 20 70 61 72 74 20 6f 66 20 61 20 53 49 |ond part of a SI| 00000a10 4e 29 3a 20 74 68 69 73 20 6d 65 61 6e 73 20 74 |N): this means t| 00000a20 68 61 74 20 69 6e 20 74 68 65 20 6d 61 70 20 74 |hat in the map t| 00000a30 68 65 79 20 61 70 70 65 61 72 0a 74 6f 20 62 65 |hey appear.to be| 00000a40 20 61 20 73 69 6e 67 6c 65 20 66 69 6c 65 20 28 | a single file (| 00000a50 6f 63 63 75 70 79 69 6e 67 20 6f 6e 6c 79 20 6f |occupying only o| 00000a60 6e 65 20 62 6c 6f 63 6b 29 20 62 75 74 2c 20 6b |ne block) but, k| 00000a70 6e 6f 77 69 6e 67 20 74 68 65 20 53 49 4e 2c 20 |nowing the SIN, | 00000a80 69 74 20 69 73 0a 70 6f 73 73 69 62 6c 65 20 74 |it is.possible t| 00000a90 6f 20 66 69 6e 64 20 6f 75 74 20 74 68 65 20 72 |o find out the r| 00000aa0 69 67 68 74 20 61 64 64 72 65 73 73 20 6f 66 20 |ight address of | 00000ab0 65 61 63 68 20 6f 6e 65 2e 20 54 68 69 73 20 74 |each one. This t| 00000ac0 72 69 63 6b 20 69 73 20 75 73 65 66 75 6c 20 74 |rick is useful t| 00000ad0 6f 0a 61 76 6f 69 64 20 61 20 6c 6f 74 20 6f 66 |o.avoid a lot of| 00000ae0 20 64 69 73 63 20 73 70 61 63 65 20 77 61 73 74 | disc space wast| 00000af0 69 6e 67 3a 20 62 65 63 61 75 73 65 20 6f 66 20 |ing: because of | 00000b00 74 68 65 20 6f 72 67 61 6e 69 7a 61 74 69 6f 6e |the organization| 00000b10 20 6f 66 20 74 68 65 20 6d 61 70 2c 0a 65 61 63 | of the map,.eac| 00000b20 68 20 62 6c 6f 63 6b 20 6d 75 73 74 20 6f 63 63 |h block must occ| 00000b30 75 70 79 20 61 20 6d 69 6e 69 6d 75 6d 20 66 69 |upy a minimum fi| 00000b40 78 65 64 20 6c 65 6e 67 74 68 20 28 74 68 61 74 |xed length (that| 00000b50 20 67 65 6e 65 72 61 6c 6c 79 20 64 65 70 65 6e | generally depen| 00000b60 64 73 20 6f 6e 20 74 68 65 0a 73 69 7a 65 20 6f |ds on the.size o| 00000b70 66 20 74 68 65 20 48 44 29 20 61 6e 64 20 73 6f |f the HD) and so| 00000b80 2c 20 65 76 65 6e 20 69 66 20 74 68 65 20 66 69 |, even if the fi| 00000b90 6c 65 20 69 73 20 72 65 61 6c 6c 79 20 73 68 6f |le is really sho| 00000ba0 72 74 2c 20 69 74 20 68 61 73 20 74 6f 20 75 73 |rt, it has to us| 00000bb0 65 20 75 70 0a 73 6f 6d 65 20 65 78 74 72 61 20 |e up.some extra | 00000bc0 64 69 73 63 20 73 70 61 63 65 2e 20 54 68 61 6e |disc space. Than| 00000bd0 6b 73 20 74 6f 20 74 68 65 20 73 65 63 74 6f 72 |ks to the sector| 00000be0 20 6f 66 66 73 65 74 73 2c 20 61 20 6c 6f 74 20 | offsets, a lot | 00000bf0 6f 66 20 73 6d 61 6c 6c 20 66 69 6c 65 73 0a 63 |of small files.c| 00000c00 61 6e 20 73 68 61 72 65 20 74 68 65 20 73 61 6d |an share the sam| 00000c10 65 20 62 6c 6f 63 6b 20 28 74 68 75 73 20 74 68 |e block (thus th| 00000c20 65 20 73 61 6d 65 20 66 69 6c 65 20 6e 75 6d 62 |e same file numb| 00000c30 65 72 29 20 62 75 74 20 65 61 63 68 20 6f 6e 65 |er) but each one| 00000c40 20 63 6f 75 6c 64 20 6f 6e 6c 79 0a 75 73 65 20 | could only.use | 00000c50 74 68 65 20 73 69 7a 65 20 6f 66 20 61 20 70 68 |the size of a ph| 00000c60 79 73 69 63 61 6c 20 73 65 63 74 6f 72 2e 0a 0a |ysical sector...| 00000c70 49 20 74 72 69 65 64 20 74 6f 20 65 78 70 6c 61 |I tried to expla| 00000c80 69 6e 20 74 68 65 20 6d 61 70 20 73 74 72 75 63 |in the map struc| 00000c90 74 75 72 65 20 69 6e 20 61 20 73 69 6d 70 6c 69 |ture in a simpli| 00000ca0 66 69 65 64 20 77 61 79 2c 20 77 69 74 68 6f 75 |fied way, withou| 00000cb0 74 20 67 6f 69 6e 67 20 64 65 65 70 6c 79 0a 69 |t going deeply.i| 00000cc0 6e 74 6f 20 74 68 65 20 72 65 61 6c 20 64 61 74 |nto the real dat| 00000cd0 61 20 73 74 72 75 63 74 75 72 65 20 28 62 69 74 |a structure (bit| 00000ce0 20 73 74 72 65 61 6d 73 2c 20 63 68 65 63 6b 73 | streams, checks| 00000cf0 75 6d 73 2c 20 65 74 63 2e 29 2c 20 62 75 74 20 |ums, etc.), but | 00000d00 49 20 74 68 69 6e 6b 20 49 0a 73 61 69 64 20 65 |I think I.said e| 00000d10 6e 6f 75 67 68 20 74 6f 20 61 6c 6c 6f 77 20 79 |nough to allow y| 00000d20 6f 75 20 74 6f 20 75 6e 64 65 72 73 74 61 6e 64 |ou to understand| 00000d30 3a 0a 0a 0a 57 68 61 74 20 63 61 6e 20 67 6f 20 |:...What can go | 00000d40 77 72 6f 6e 67 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |wrong.----------| 00000d50 2d 2d 2d 2d 2d 2d 2d 0a 0a 4f 62 76 69 6f 75 73 |-------..Obvious| 00000d60 6c 79 20 74 68 65 20 61 62 6f 76 65 20 73 74 72 |ly the above str| 00000d70 75 63 74 75 72 65 20 69 73 20 72 65 61 6c 6c 79 |ucture is really| 00000d80 20 72 69 67 69 64 20 61 6e 64 20 74 68 65 72 65 | rigid and there| 00000d90 20 69 73 20 6e 6f 20 70 6c 61 63 65 20 66 6f 72 | is no place for| 00000da0 0a 65 72 72 6f 72 73 21 a0 55 6e 66 6f 72 74 75 |.errors!.Unfortu| 00000db0 6e 61 74 65 6c 79 20 65 72 72 6f 72 73 20 61 6c |nately errors al| 00000dc0 77 61 79 73 20 6f 63 63 75 72 20 62 65 63 61 75 |ways occur becau| 00000dd0 73 65 20 6f 66 20 75 6e 65 78 70 65 63 74 65 64 |se of unexpected| 00000de0 20 70 6f 77 65 72 20 64 6f 77 6e 2c 0a 73 79 73 | power down,.sys| 00000df0 74 65 6d 20 63 72 61 73 68 65 73 2c 20 70 68 79 |tem crashes, phy| 00000e00 73 69 63 61 6c 20 64 61 6d 61 67 65 73 2c 20 28 |sical damages, (| 00000e10 65 72 72 6f 72 73 20 69 6e 20 46 69 6c 65 43 6f |errors in FileCo| 00000e20 72 65 20 6d 6f 64 75 6c 65 20 69 74 73 65 6c 66 |re module itself| 00000e30 3f 29 2c 20 65 74 63 3b 0a 74 68 69 73 20 69 73 |?), etc;.this is| 00000e40 20 61 20 6c 69 73 74 20 6f 66 20 70 6f 73 73 69 | a list of possi| 00000e50 62 6c 65 20 70 72 6f 62 6c 65 6d 73 3a 0a 0a 2d |ble problems:..-| 00000e60 20 64 69 66 66 65 72 65 6e 74 20 66 69 6c 65 20 | different file | 00000e70 6c 65 6e 67 74 68 73 20 69 6e 20 6d 61 70 20 61 |lengths in map a| 00000e80 6e 64 20 64 69 72 65 63 74 6f 72 79 3a 20 69 66 |nd directory: if| 00000e90 20 74 68 65 20 61 6c 6c 6f 63 61 74 65 64 20 6c | the allocated l| 00000ea0 65 6e 67 74 68 20 69 6e 20 74 68 65 0a 20 20 6d |ength in the. m| 00000eb0 61 70 20 69 73 20 6d 6f 72 65 20 74 68 61 6e 20 |ap is more than | 00000ec0 74 68 65 20 6f 6e 65 20 69 6e 20 74 68 65 20 64 |the one in the d| 00000ed0 69 72 65 63 74 6f 72 79 20 79 6f 75 20 63 61 6e |irectory you can| 00000ee0 20 69 67 6e 6f 72 65 20 74 68 69 73 20 28 62 75 | ignore this (bu| 00000ef0 74 20 79 6f 75 20 68 61 76 65 0a 20 20 73 6f 6d |t you have. som| 00000f00 65 20 6c 6f 73 74 20 73 70 61 63 65 29 20 62 75 |e lost space) bu| 00000f10 74 20 69 6e 20 74 68 65 20 6f 70 70 6f 73 69 74 |t in the opposit| 00000f20 65 20 63 61 73 65 20 52 49 53 43 20 4f 53 20 67 |e case RISC OS g| 00000f30 65 6e 65 72 61 6c 6c 79 20 63 72 61 73 68 65 73 |enerally crashes| 00000f40 20 69 66 20 79 6f 75 0a 20 20 74 72 79 20 74 6f | if you. try to| 00000f50 20 6c 6f 61 64 20 74 68 65 20 66 69 6c 65 2e 0a | load the file..| 00000f60 0a 2d 20 61 20 66 69 6c 65 20 6e 75 6d 62 65 72 |.- a file number| 00000f70 20 69 73 20 61 6c 6c 6f 63 61 74 65 64 20 69 6e | is allocated in| 00000f80 20 74 68 65 20 6d 61 70 20 62 75 74 20 6e 6f 74 | the map but not| 00000f90 20 69 6e 20 74 68 65 20 64 69 72 65 63 74 6f 72 | in the director| 00000fa0 79 20 73 74 72 75 63 74 75 72 65 3a 0a 20 20 79 |y structure:. y| 00000fb0 6f 75 20 68 61 76 65 20 73 6f 6d 65 20 73 70 61 |ou have some spa| 00000fc0 63 65 20 6f 63 63 75 70 69 65 64 20 69 6e 20 74 |ce occupied in t| 00000fd0 68 65 20 6d 61 70 20 62 79 20 61 6e 20 6e 6f 6e |he map by an non| 00000fe0 2d 65 78 69 73 74 65 6e 74 20 66 69 6c 65 2e 0a |-existent file..| 00000ff0 0a 2d 20 61 20 66 69 6c 65 20 68 61 73 20 61 20 |.- a file has a | 00001000 66 69 6c 65 20 6e 75 6d 62 65 72 20 74 68 61 74 |file number that| 00001010 20 69 73 6e 27 74 20 61 6c 6c 6f 63 61 74 65 64 | isn't allocated| 00001020 20 69 6e 20 74 68 65 20 6d 61 70 3a 20 67 65 6e | in the map: gen| 00001030 65 72 61 6c 6c 79 20 52 49 53 43 20 4f 53 0a 20 |erally RISC OS. | 00001040 20 68 61 6e 67 73 20 74 68 65 20 63 6f 6d 70 75 | hangs the compu| 00001050 74 65 72 20 69 66 20 79 6f 75 20 74 72 79 20 74 |ter if you try t| 00001060 6f 20 6c 6f 61 64 20 74 68 65 20 66 69 6c 65 2e |o load the file.| 00001070 0a 0a 2d 20 74 68 65 20 66 72 65 65 20 73 70 61 |..- the free spa| 00001080 63 65 20 6c 69 6e 6b 65 64 20 6c 69 73 74 20 69 |ce linked list i| 00001090 73 20 62 72 6f 6b 65 6e 3a 20 74 68 65 72 65 20 |s broken: there | 000010a0 69 73 20 73 6f 6d 65 20 66 72 65 65 20 73 70 61 |is some free spa| 000010b0 63 65 20 74 68 61 74 20 69 73 6e 27 74 0a 20 20 |ce that isn't. | 000010c0 6c 69 6e 6b 65 64 20 77 69 74 68 20 74 68 65 20 |linked with the | 000010d0 6f 74 68 65 72 73 2c 20 74 68 75 73 20 69 74 20 |others, thus it | 000010e0 69 73 20 6c 6f 73 74 20 28 69 74 20 69 73 20 6e |is lost (it is n| 000010f0 6f 20 6d 6f 72 65 20 66 72 65 65 2e 2e 2e 29 2e |o more free...).| 00001100 0a 0a 49 6e 20 74 68 65 73 65 20 63 61 73 65 73 |..In these cases| 00001110 20 28 65 78 63 65 70 74 20 69 6e 20 74 68 65 20 | (except in the | 00001120 6f 6e 65 73 20 74 68 61 74 20 6d 61 6b 65 20 52 |ones that make R| 00001130 49 53 43 20 4f 53 20 74 6f 20 63 72 61 73 68 29 |ISC OS to crash)| 00001140 20 2a 43 68 65 63 6b 4d 61 70 0a 72 65 70 6f 72 | *CheckMap.repor| 00001150 74 73 20 61 6e 20 69 6e 63 6f 6e 73 69 73 74 65 |ts an inconsiste| 00001160 6e 63 79 2e 0a 55 6e 66 6f 72 74 75 6e 61 74 65 |ncy..Unfortunate| 00001170 6c 79 20 74 68 65 72 65 20 69 73 20 61 20 77 6f |ly there is a wo| 00001180 72 73 65 20 63 61 73 65 3a 0a 0a 2d 20 74 68 65 |rse case:..- the| 00001190 20 63 68 65 63 6b 73 75 6d 20 6f 66 20 6f 6e 65 | checksum of one| 000011a0 20 6f 72 20 6d 6f 72 65 20 7a 6f 6e 65 73 20 69 | or more zones i| 000011b0 73 20 77 72 6f 6e 67 3a 20 69 6e 20 74 68 69 73 |s wrong: in this| 000011c0 20 63 61 73 65 20 28 61 70 70 61 72 65 6e 74 6c | case (apparentl| 000011d0 79 20 65 61 73 79 0a 20 20 74 6f 20 66 69 78 29 |y easy. to fix)| 000011e0 20 52 49 53 43 20 4f 53 20 69 73 6e 27 74 20 61 | RISC OS isn't a| 000011f0 62 6c 65 20 74 6f 20 72 65 63 6f 67 6e 69 73 65 |ble to recognise| 00001200 20 74 68 65 20 64 69 73 63 20 70 72 6f 70 65 72 | the disc proper| 00001210 6c 79 2e 20 55 73 69 6e 67 20 61 20 44 69 73 63 |ly. Using a Disc| 00001220 0a 20 20 44 6f 63 74 6f 72 20 74 6f 6f 6c 20 69 |. Doctor tool i| 00001230 74 20 73 68 6f 75 6c 64 20 62 65 20 70 6f 73 73 |t should be poss| 00001240 69 62 6c 65 20 74 6f 20 6d 61 6e 75 61 6c 6c 79 |ible to manually| 00001250 20 66 69 78 20 74 68 65 20 70 72 6f 62 6c 65 6d | fix the problem| 00001260 2e 0a 0a 41 6e 6f 74 68 65 72 20 71 75 69 74 65 |...Another quite| 00001270 20 63 6f 6d 6d 6f 6e 20 65 72 72 6f 72 20 28 6e | common error (n| 00001280 6f 74 20 64 69 72 65 63 74 6c 79 20 72 65 6c 61 |ot directly rela| 00001290 74 65 64 20 74 6f 20 74 68 65 20 6d 61 70 29 20 |ted to the map) | 000012a0 69 73 3a 0a 0a 2d 20 62 72 6f 6b 65 6e 20 64 69 |is:..- broken di| 000012b0 72 65 63 74 6f 72 79 3a 20 74 68 69 73 20 65 72 |rectory: this er| 000012c0 72 6f 72 20 69 73 20 69 73 73 75 65 64 20 77 68 |ror is issued wh| 000012d0 65 6e 20 52 49 53 43 20 4f 53 20 66 69 6e 64 73 |en RISC OS finds| 000012e0 20 61 20 64 69 72 65 63 74 6f 72 79 20 74 68 61 | a directory tha| 000012f0 74 0a 20 20 68 61 73 20 73 6f 6d 65 20 27 73 74 |t. has some 'st| 00001300 72 61 6e 67 65 27 20 64 61 74 61 20 69 6e 20 69 |range' data in i| 00001310 74 20 28 6e 6f 20 64 69 72 65 63 74 6f 72 79 20 |t (no directory | 00001320 69 64 65 6e 74 69 66 69 65 72 2c 20 77 72 6f 6e |identifier, wron| 00001330 67 20 63 68 65 63 6b 73 75 6d 2c 0a 20 20 65 74 |g checksum,. et| 00001340 63 2e 29 2e 20 54 68 65 20 6f 6e 6c 79 20 77 61 |c.). The only wa| 00001350 79 20 74 6f 20 63 75 72 65 20 74 68 69 73 20 69 |y to cure this i| 00001360 73 20 74 6f 20 72 65 6d 6f 76 65 20 74 68 65 20 |s to remove the | 00001370 64 69 72 65 63 74 6f 72 79 20 66 72 6f 6d 20 69 |directory from i| 00001380 74 73 20 70 61 72 65 6e 74 0a 20 20 62 75 74 20 |ts parent. but | 00001390 75 6e 66 6f 72 74 75 6e 61 74 65 6c 79 20 74 68 |unfortunately th| 000013a0 69 73 20 69 73 20 69 6d 70 6f 73 73 69 62 6c 65 |is is impossible| 000013b0 20 75 73 69 6e 67 20 73 74 61 6e 64 61 72 64 20 | using standard | 000013c0 63 6f 6d 6d 61 6e 64 73 20 28 77 69 70 65 2c 20 |commands (wipe, | 000013d0 64 65 6c 65 74 65 2c 0a 20 20 72 65 6d 6f 76 65 |delete,. remove| 000013e0 29 2e 20 42 72 6f 6b 65 6e 20 64 69 72 65 63 74 |). Broken direct| 000013f0 6f 72 69 65 73 20 75 73 75 61 6c 6c 79 20 6c 65 |ories usually le| 00001400 61 64 20 74 6f 20 69 6e 63 6f 6e 73 69 73 74 65 |ad to inconsiste| 00001410 6e 74 20 6d 61 70 73 20 62 65 63 61 75 73 65 20 |nt maps because | 00001420 61 6c 6c 0a 20 20 74 68 65 20 66 69 6c 65 73 20 |all. the files | 00001430 63 6f 6e 74 61 69 6e 65 64 20 69 6e 20 74 68 65 |contained in the| 00001440 6d 20 64 69 73 61 70 70 65 61 72 20 66 72 6f 6d |m disappear from| 00001450 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 73 | the directory s| 00001460 74 72 75 63 74 75 72 65 20 62 75 74 20 6e 6f 74 |tructure but not| 00001470 0a 20 20 66 72 6f 6d 20 74 68 65 20 6d 61 70 20 |. from the map | 00001480 28 73 65 65 20 61 62 6f 76 65 29 2e 0a 0a 0a 57 |(see above)....W| 00001490 68 61 74 20 63 61 6e 20 62 65 20 77 61 73 74 65 |hat can be waste| 000014a0 64 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |d.--------------| 000014b0 2d 2d 2d 2d 0a 0a 42 65 63 61 75 73 65 20 6f 66 |----..Because of| 000014c0 20 74 68 65 20 64 69 73 63 20 73 74 72 75 63 74 | the disc struct| 000014d0 75 72 65 20 61 6e 64 20 74 68 65 20 6d 61 70 20 |ure and the map | 000014e0 6f 72 67 61 6e 69 7a 61 74 69 6f 6e 2c 20 73 6f |organization, so| 000014f0 6d 65 20 73 70 61 63 65 20 63 61 6e 20 62 65 20 |me space can be | 00001500 0a 27 6e 61 74 75 72 61 6c 6c 79 27 20 77 61 73 |.'naturally' was| 00001510 74 65 64 2e 0a 0a 46 69 72 73 74 20 6f 66 20 61 |ted...First of a| 00001520 6c 6c 2c 20 74 68 65 20 73 65 63 74 6f 72 20 62 |ll, the sector b| 00001530 6f 75 6e 64 73 20 61 72 65 20 61 20 70 68 79 73 |ounds are a phys| 00001540 69 63 61 6c 20 6c 69 6d 69 74 20 61 6e 64 20 73 |ical limit and s| 00001550 6f 20 61 6c 6c 20 74 68 65 20 66 69 6c 65 73 0a |o all the files.| 00001560 6d 75 73 74 20 62 65 20 27 73 65 63 74 6f 72 20 |must be 'sector | 00001570 61 6c 69 67 6e 65 64 27 2e 20 53 6f 2c 20 6f 6e |aligned'. So, on| 00001580 20 61 20 35 31 32 20 62 79 74 65 73 20 73 65 63 | a 512 bytes sec| 00001590 74 6f 72 20 73 69 7a 65 64 20 48 44 2c 20 61 20 |tor sized HD, a | 000015a0 31 20 62 79 74 65 20 66 69 6c 65 20 0a 61 6c 77 |1 byte file .alw| 000015b0 61 79 73 20 75 73 65 73 20 28 61 74 20 6c 65 61 |ays uses (at lea| 000015c0 73 74 29 20 35 31 32 20 62 79 74 65 73 2c 20 77 |st) 512 bytes, w| 000015d0 68 69 6c 65 20 61 20 35 31 33 20 62 79 74 65 73 |hile a 513 bytes| 000015e0 20 6f 6e 65 20 75 73 65 73 20 31 30 32 34 20 62 | one uses 1024 b| 000015f0 79 74 65 73 2e 0a 0a 42 75 74 20 74 68 65 20 72 |ytes...But the r| 00001600 65 61 6c 20 77 61 73 74 65 20 6f 66 20 73 70 61 |eal waste of spa| 00001610 63 65 20 69 73 20 63 61 75 73 65 64 20 62 79 20 |ce is caused by | 00001620 74 68 65 20 6d 61 70 20 6f 72 67 61 6e 69 7a 61 |the map organiza| 00001630 74 69 6f 6e 3a 20 61 73 20 49 20 61 6c 72 65 61 |tion: as I alrea| 00001640 64 79 0a 73 61 69 64 2c 20 74 68 65 72 65 20 69 |dy.said, there i| 00001650 73 20 61 20 6d 69 6e 69 6d 75 6e 20 6c 65 6e 67 |s a minimun leng| 00001660 74 68 20 66 6f 72 20 65 61 63 68 20 6d 61 70 20 |th for each map | 00001670 62 6c 6f 63 6b 20 28 66 72 6f 6d 20 6e 6f 77 20 |block (from now | 00001680 49 20 77 69 6c 6c 20 63 6f 6e 73 69 64 65 72 0a |I will consider.| 00001690 69 74 20 74 6f 20 62 65 20 34 4b 20 62 75 74 20 |it to be 4K but | 000016a0 6e 6f 74 65 20 74 68 61 74 20 74 68 69 73 20 69 |note that this i| 000016b0 73 20 6f 6e 6c 79 20 61 6e 20 65 78 61 6d 70 6c |s only an exampl| 000016c0 65 29 2e 0a 0a 54 68 69 73 20 69 73 20 6e 6f 74 |e)...This is not| 000016d0 20 73 6f 20 62 61 64 20 62 65 63 61 75 73 65 20 | so bad because | 000016e0 6d 6f 72 65 20 74 68 61 6e 20 6f 6e 65 20 66 69 |more than one fi| 000016f0 6c 65 20 63 61 6e 20 73 68 61 72 65 20 69 74 2c |le can share it,| 00001700 20 68 65 6e 63 65 20 34 2a 31 4b 20 66 69 6c 65 | hence 4*1K file| 00001710 73 0a 63 61 6e 20 66 69 6c 6c 20 75 70 20 74 68 |s.can fill up th| 00001720 65 20 73 61 6d 65 20 62 6c 6f 63 6b 20 77 61 73 |e same block was| 00001730 74 69 6e 67 20 6e 6f 20 73 70 61 63 65 2e 20 54 |ting no space. T| 00001740 68 65 20 62 61 64 20 70 6f 69 6e 74 20 69 73 20 |he bad point is | 00001750 74 68 61 74 20 6f 6e 6c 79 0a 66 69 6c 65 73 20 |that only.files | 00001760 69 6e 20 74 68 65 20 73 61 6d 65 20 64 69 72 65 |in the same dire| 00001770 63 74 6f 72 79 20 63 61 6e 20 73 68 61 72 65 20 |ctory can share | 00001780 62 6c 6f 63 6b 73 2c 20 73 6f 20 34 2a 31 4b 20 |blocks, so 4*1K | 00001790 66 69 6c 65 73 20 69 6e 20 34 20 64 69 66 66 65 |files in 4 diffe| 000017a0 72 65 6e 74 0a 64 69 72 65 63 74 6f 72 69 65 73 |rent.directories| 000017b0 20 77 69 6c 6c 20 75 73 65 20 31 36 4b 2e 0a 0a | will use 16K...| 000017c0 41 20 64 69 72 65 63 74 6f 72 79 20 61 6c 77 61 |A directory alwa| 000017d0 79 73 20 6e 65 65 64 73 20 32 4b 20 6f 66 20 64 |ys needs 2K of d| 000017e0 69 73 63 20 73 70 61 63 65 20 74 6f 20 6b 65 65 |isc space to kee| 000017f0 70 20 69 74 73 20 64 61 74 61 2e 20 53 69 6e 63 |p its data. Sinc| 00001800 65 20 61 20 64 69 72 65 63 74 6f 72 79 0a 66 72 |e a directory.fr| 00001810 6f 6d 20 74 68 65 20 6d 61 70 20 70 6f 69 6e 74 |om the map point| 00001820 20 6f 66 20 76 69 65 77 20 69 73 20 6a 75 73 74 | of view is just| 00001830 20 61 20 66 69 6c 65 2c 20 69 74 20 77 69 6c 6c | a file, it will| 00001840 20 73 74 69 6c 6c 20 75 73 65 20 34 4b 3a 20 66 | still use 4K: f| 00001850 6f 72 74 75 6e 61 74 65 6c 79 0a 69 74 20 63 61 |ortunately.it ca| 00001860 6e 20 73 68 61 72 65 20 74 68 65 20 72 65 6d 61 |n share the rema| 00001870 69 6e 69 6e 67 20 32 4b 20 77 69 74 68 20 66 69 |ining 2K with fi| 00001880 6c 65 73 20 63 6f 6e 74 61 69 6e 65 64 20 69 6e |les contained in| 00001890 20 69 74 20 28 6e 6f 74 20 77 69 74 68 20 66 69 | it (not with fi| 000018a0 6c 65 73 20 66 72 6f 6d 0a 69 74 73 20 70 61 72 |les from.its par| 000018b0 65 6e 74 29 2e 20 49 66 20 61 20 64 69 72 65 63 |ent). If a direc| 000018c0 74 6f 72 79 20 63 6f 6e 74 61 69 6e 73 20 61 20 |tory contains a | 000018d0 32 4b 20 66 69 6c 65 20 6f 72 20 32 2a 31 4b 20 |2K file or 2*1K | 000018e0 66 69 6c 65 73 20 61 6c 6c 20 74 68 65 20 73 70 |files all the sp| 000018f0 61 63 65 20 69 73 0a 75 73 65 64 20 62 75 74 20 |ace is.used but | 00001900 69 66 20 69 74 20 63 6f 6e 74 61 69 6e 73 20 6f |if it contains o| 00001910 6e 6c 79 20 66 69 6c 65 73 20 6c 6f 6e 67 65 72 |nly files longer| 00001920 20 74 68 61 6e 20 32 4b 20 74 68 65 20 73 70 61 | than 2K the spa| 00001930 63 65 20 77 69 6c 6c 20 62 65 20 77 61 73 74 65 |ce will be waste| 00001940 64 2e 0a 0a 57 61 73 74 65 64 20 73 70 61 63 65 |d...Wasted space| 00001950 20 69 73 6e 27 74 20 6c 6f 73 74 20 73 70 61 63 | isn't lost spac| 00001960 65 3a 20 69 66 20 79 6f 75 20 68 61 76 65 20 61 |e: if you have a| 00001970 6e 20 65 6d 70 74 79 20 64 69 72 65 63 74 6f 72 |n empty director| 00001980 79 20 79 6f 75 20 77 69 6c 6c 20 77 61 73 74 65 |y you will waste| 00001990 0a 32 4b 2e 20 42 75 74 20 77 68 65 6e 20 79 6f |.2K. But when yo| 000019a0 75 20 64 65 6c 65 74 65 20 69 74 20 79 6f 75 20 |u delete it you | 000019b0 77 69 6c 6c 20 72 65 67 61 69 6e 20 74 68 65 20 |will regain the | 000019c0 77 68 6f 6c 65 20 34 4b 2c 20 6e 6f 20 6c 6f 73 |whole 4K, no los| 000019d0 73 2e 20 49 66 20 79 6f 75 20 73 61 76 65 0a 61 |s. If you save.a| 000019e0 20 31 4b 20 66 69 6c 65 20 69 6e 20 69 74 2c 20 | 1K file in it, | 000019f0 74 68 65 20 66 72 65 65 20 73 70 61 63 65 20 6f |the free space o| 00001a00 6e 20 79 6f 75 72 20 64 69 73 63 20 77 69 6c 6c |n your disc will| 00001a10 20 72 65 6d 61 69 6e 20 74 68 65 20 73 61 6d 65 | remain the same| 00001a20 20 61 6e 64 20 74 68 65 0a 77 61 73 74 65 64 20 | and the.wasted | 00001a30 73 70 61 63 65 20 77 69 6c 6c 20 62 65 20 6a 75 |space will be ju| 00001a40 73 74 20 31 4b 2e 0a 0a 44 75 72 69 6e 67 20 6e |st 1K...During n| 00001a50 6f 72 6d 61 6c 20 6f 70 65 72 61 74 69 6f 6e 73 |ormal operations| 00001a60 2c 20 74 68 65 72 65 20 69 73 20 6e 6f 20 77 61 |, there is no wa| 00001a70 79 20 74 6f 20 61 76 6f 69 64 20 77 61 73 74 69 |y to avoid wasti| 00001a80 6e 67 20 73 70 61 63 65 3a 20 52 49 53 43 20 4f |ng space: RISC O| 00001a90 53 0a 64 6f 65 73 20 61 6c 6c 20 74 68 65 20 77 |S.does all the w| 00001aa0 6f 72 6b 20 61 6e 64 20 79 6f 75 20 64 6f 6e 27 |ork and you don'| 00001ab0 74 20 68 61 76 65 20 74 6f 20 77 6f 72 72 79 20 |t have to worry | 00001ac0 61 62 6f 75 74 20 74 68 65 20 66 69 6c 65 20 61 |about the file a| 00001ad0 6c 6c 6f 63 61 74 69 6f 6e 0a 73 74 72 61 74 65 |llocation.strate| 00001ae0 67 79 2e 20 41 6e 79 77 61 79 2c 20 73 6f 6d 65 |gy. Anyway, some| 00001af0 74 69 6d 65 73 20 79 6f 75 20 63 61 6e 20 72 65 |times you can re| 00001b00 63 6f 76 65 72 20 73 6f 6d 65 20 77 61 73 74 65 |cover some waste| 00001b10 64 20 73 70 61 63 65 20 62 79 20 73 69 6d 70 6c |d space by simpl| 00001b20 79 0a 63 6f 70 79 69 6e 67 20 61 20 66 69 6c 65 |y.copying a file| 00001b30 2c 20 64 65 6c 65 74 69 6e 67 20 74 68 65 20 6f |, deleting the o| 00001b40 72 69 67 69 6e 61 6c 20 6f 6e 65 20 61 6e 64 20 |riginal one and | 00001b50 72 65 6e 61 6d 69 6e 67 20 74 68 65 20 6e 65 77 |renaming the new| 00001b60 20 6f 6e 65 20 61 73 20 74 68 65 20 6f 6c 64 0a | one as the old.| 00001b70 6f 6e 65 20 28 75 73 75 61 6c 6c 79 20 69 74 20 |one (usually it | 00001b80 69 73 20 62 65 74 74 65 72 20 74 6f 20 63 6f 70 |is better to cop| 00001b90 79 20 74 68 65 20 77 68 6f 6c 65 20 63 6f 6e 74 |y the whole cont| 00001ba0 65 6e 74 20 6f 66 20 61 20 64 69 72 65 63 74 6f |ent of a directo| 00001bb0 72 79 20 74 6f 20 61 6e 6f 74 68 65 72 0a 61 6e |ry to another.an| 00001bc0 64 20 74 68 65 6e 20 72 65 6e 61 6d 65 20 74 68 |d then rename th| 00001bd0 65 20 77 68 6f 6c 65 20 64 69 72 65 63 74 6f 72 |e whole director| 00001be0 79 20 62 61 63 6b 29 20 62 75 74 20 64 6f 6e 27 |y back) but don'| 00001bf0 74 20 65 78 70 65 63 74 20 74 6f 6f 20 6d 75 63 |t expect too muc| 00001c00 68 20 67 61 69 6e 2e 2e 2e 0a 0a 0a 2a 43 68 65 |h gain......*Che| 00001c10 63 6b 4d 61 70 20 61 6e 64 20 2a 43 6f 6d 70 61 |ckMap and *Compa| 00001c20 63 74 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |ct.-------------| 00001c30 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 43 68 65 63 6b |---------..Check| 00001c40 4d 61 70 20 70 65 72 66 6f 72 6d 73 20 71 75 69 |Map performs qui| 00001c50 74 65 20 61 20 73 69 6d 70 6c 65 20 74 61 73 6b |te a simple task| 00001c60 3a 20 69 74 20 6a 75 73 74 20 73 63 61 6e 73 20 |: it just scans | 00001c70 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 74 72 |the directory tr| 00001c80 65 65 20 61 6e 64 0a 63 68 65 63 6b 73 20 74 68 |ee and.checks th| 00001c90 61 74 20 61 6c 6c 20 74 68 65 20 66 69 6c 65 20 |at all the file | 00001ca0 6e 75 6d 62 65 72 73 20 69 6e 20 74 68 65 20 6d |numbers in the m| 00001cb0 61 70 20 61 72 65 20 61 63 74 75 61 6c 6c 79 20 |ap are actually | 00001cc0 63 6f 6e 74 61 69 6e 65 64 20 69 6e 20 61 0a 64 |contained in a.d| 00001cd0 69 72 65 63 74 6f 72 79 2e 20 43 6f 6e 73 69 64 |irectory. Consid| 00001ce0 65 72 69 6e 67 20 74 68 61 74 20 43 68 65 63 6b |ering that Check| 00001cf0 4d 61 70 20 73 68 6f 75 6c 64 20 62 65 20 75 73 |Map should be us| 00001d00 65 64 20 77 68 65 6e 20 73 6f 6d 65 74 68 69 6e |ed when somethin| 00001d10 67 20 77 65 6e 74 20 77 72 6f 6e 67 2c 0a 69 74 |g went wrong,.it| 00001d20 20 73 65 65 6d 73 20 74 6f 20 62 65 20 61 20 76 | seems to be a v| 00001d30 65 72 79 20 70 6f 6f 72 6c 79 20 77 72 69 74 74 |ery poorly writt| 00001d40 65 6e 20 70 69 65 63 65 20 6f 66 20 63 6f 64 65 |en piece of code| 00001d50 3a 20 73 6f 6d 65 74 69 6d 65 73 20 69 74 20 68 |: sometimes it h| 00001d60 61 6e 67 73 20 74 68 65 0a 77 68 6f 6c 65 20 63 |angs the.whole c| 00001d70 6f 6d 70 75 74 65 72 2c 20 73 6f 6d 65 74 69 6d |omputer, sometim| 00001d80 65 73 20 69 74 20 6a 75 73 74 20 70 72 69 6e 74 |es it just print| 00001d90 73 20 74 68 65 20 63 72 79 70 74 69 63 20 6d 65 |s the cryptic me| 00001da0 73 73 61 67 65 20 22 4d 61 70 20 69 6e 63 6f 6e |ssage "Map incon| 00001db0 73 69 73 74 65 6e 74 0a 77 69 74 68 20 64 69 72 |sistent.with dir| 00001dc0 65 63 74 6f 72 79 20 74 72 65 65 22 20 61 6e 64 |ectory tree" and| 00001dd0 20 74 68 65 20 6f 6e 6c 79 20 61 63 74 69 6f 6e | the only action| 00001de0 20 74 68 61 74 20 69 74 20 73 68 6f 75 6c 64 20 | that it should | 00001df0 64 6f 20 74 6f 20 66 69 78 20 74 68 65 0a 73 69 |do to fix the.si| 00001e00 74 75 61 74 69 6f 6e 20 69 73 20 74 68 65 20 73 |tuation is the s| 00001e10 77 61 70 70 69 6e 67 20 62 65 74 77 65 65 6e 20 |wapping between | 00001e20 74 68 65 20 32 20 63 6f 70 69 65 73 20 6f 66 20 |the 2 copies of | 00001e30 74 68 65 20 6d 61 70 20 28 62 75 74 20 73 65 65 |the map (but see| 00001e40 20 61 62 6f 76 65 20 74 6f 0a 75 6e 64 65 72 73 | above to.unders| 00001e50 74 61 6e 64 20 77 68 79 20 6e 6f 62 6f 64 79 20 |tand why nobody | 00001e60 68 61 73 20 6e 65 76 65 72 20 62 65 65 6e 20 61 |has never been a| 00001e70 62 6c 65 20 74 6f 20 75 73 65 20 74 68 69 73 20 |ble to use this | 00001e80 66 61 63 69 6c 69 74 79 2e 2e 2e 29 2e 0a 0a 43 |facility...)...C| 00001e90 6f 6d 70 61 63 74 20 68 61 73 20 62 65 65 6e 20 |ompact has been | 00001ea0 61 20 76 65 72 79 20 75 73 65 66 75 6c 20 63 6f |a very useful co| 00001eb0 6d 6d 61 6e 64 20 77 68 65 6e 20 74 68 65 20 6f |mmand when the o| 00001ec0 6e 6c 79 20 77 61 79 20 74 6f 20 66 6f 72 6d 61 |nly way to forma| 00001ed0 74 20 64 69 73 63 73 20 77 61 73 0a 44 2d 46 6f |t discs was.D-Fo| 00001ee0 72 6d 61 74 3a 20 69 6e 20 66 61 63 74 20 77 69 |rmat: in fact wi| 00001ef0 74 68 20 45 2d 46 6f 72 6d 61 74 20 64 69 73 63 |th E-Format disc| 00001f00 73 20 69 74 20 69 73 20 61 6c 6d 6f 73 74 20 75 |s it is almost u| 00001f10 73 65 6c 65 73 73 2e 20 49 74 73 20 66 75 6e 63 |seless. Its func| 00001f20 74 69 6f 6e 20 69 73 0a 74 6f 20 63 6f 6c 6c 65 |tion is.to colle| 00001f30 63 74 20 74 6f 67 65 74 68 65 72 20 66 72 61 67 |ct together frag| 00001f40 6d 65 6e 74 65 64 20 66 69 6c 65 73 20 6f 72 20 |mented files or | 00001f50 66 72 61 67 6d 65 6e 74 65 64 20 66 72 65 65 20 |fragmented free | 00001f60 73 70 61 63 65 20 69 6e 73 69 64 65 20 7a 6f 6e |space inside zon| 00001f70 65 73 0a 28 62 75 74 20 6e 6f 74 20 66 72 6f 6d |es.(but not from| 00001f80 20 6f 6e 65 20 7a 6f 6e 65 20 74 6f 20 61 6e 6f | one zone to ano| 00001f90 74 68 65 72 29 2e 20 57 69 74 68 20 45 2d 46 6f |ther). With E-Fo| 00001fa0 72 6d 61 74 20 64 69 73 63 73 20 74 68 69 73 20 |rmat discs this | 00001fb0 6f 70 65 72 61 74 69 6f 6e 20 69 73 0a 70 65 72 |operation is.per| 00001fc0 66 6f 72 6d 65 64 20 61 75 74 6f 6d 61 74 69 63 |formed automatic| 00001fd0 61 6c 6c 79 20 77 68 65 6e 20 61 20 6e 65 77 20 |ally when a new | 00001fe0 66 69 6c 65 20 69 73 20 73 61 76 65 64 20 69 6e |file is saved in| 00001ff0 20 74 68 61 74 20 7a 6f 6e 65 2c 20 62 75 74 20 | that zone, but | 00002000 79 6f 75 20 63 61 6e 0a 61 6e 79 77 61 79 20 75 |you can.anyway u| 00002010 73 65 20 69 74 20 27 6d 61 6e 75 61 6c 6c 79 27 |se it 'manually'| 00002020 20 74 6f 20 73 70 65 65 64 20 75 70 20 66 75 74 | to speed up fut| 00002030 75 72 65 20 73 61 76 69 6e 67 73 20 28 61 63 74 |ure savings (act| 00002040 75 61 6c 6c 79 20 74 68 65 20 73 70 65 65 64 20 |ually the speed | 00002050 67 61 69 6e 0a 69 73 20 61 6c 6d 6f 73 74 20 69 |gain.is almost i| 00002060 72 72 65 6c 65 76 61 6e 74 29 2e 20 57 69 74 68 |rrelevant). With| 00002070 20 44 2d 46 6f 72 6d 61 74 20 64 69 73 63 73 20 | D-Format discs | 00002080 74 68 65 20 27 61 75 74 6f 2d 63 6f 6d 70 61 63 |the 'auto-compac| 00002090 74 69 6f 6e 27 20 64 6f 65 73 6e 27 74 0a 65 78 |tion' doesn't.ex| 000020a0 69 73 74 20 61 6e 64 20 66 69 6c 65 73 20 63 61 |ist and files ca| 000020b0 6e 6e 6f 74 20 62 65 20 66 72 61 67 6d 65 6e 74 |nnot be fragment| 000020c0 65 64 3a 20 69 66 20 74 68 65 72 65 20 69 73 20 |ed: if there is | 000020d0 65 6e 6f 75 67 68 20 73 70 61 63 65 20 6f 6e 20 |enough space on | 000020e0 74 68 65 20 64 69 73 63 0a 66 6f 72 20 74 68 65 |the disc.for the| 000020f0 20 66 69 6c 65 20 74 68 61 74 20 68 61 73 20 74 | file that has t| 00002100 6f 20 62 65 20 73 61 76 65 64 20 62 75 74 20 74 |o be saved but t| 00002110 68 69 73 20 66 72 65 65 20 73 70 61 63 65 20 69 |his free space i| 00002120 73 20 66 72 61 67 6d 65 6e 74 65 64 20 69 6e 0a |s fragmented in.| 00002130 73 6d 61 6c 6c 20 63 68 75 6e 6b 73 2c 20 74 68 |small chunks, th| 00002140 65 20 65 72 72 6f 72 20 22 43 6f 6d 70 61 63 74 |e error "Compact| 00002150 69 6f 6e 20 72 65 71 75 69 72 65 64 22 20 69 73 |ion required" is| 00002160 20 69 73 73 75 65 64 2e 0a 0a 0a 50 6f 73 73 69 | issued....Possi| 00002170 62 6c 65 20 51 75 65 73 74 69 6f 6e 73 0a 2d 2d |ble Questions.--| 00002180 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| 00002190 0a 0a 20 31 29 20 49 73 20 2a 43 6f 6d 70 61 63 |.. 1) Is *Compac| 000021a0 74 20 75 73 65 66 75 6c 20 6f 72 20 69 74 20 69 |t useful or it i| 000021b0 73 20 64 61 6e 67 65 72 6f 75 73 3f 0a 20 32 29 |s dangerous?. 2)| 000021c0 20 43 61 6e 20 49 20 74 72 75 73 74 20 2a 43 68 | Can I trust *Ch| 000021d0 65 63 6b 4d 61 70 3f 0a 20 33 29 20 57 68 61 74 |eckMap?. 3) What| 000021e0 20 63 61 6e 20 49 20 64 6f 20 77 69 74 68 20 61 | can I do with a| 000021f0 20 62 72 6f 6b 65 6e 20 64 69 72 65 63 74 6f 72 | broken director| 00002200 79 20 6f 72 20 61 6e 20 75 6e 64 65 6c 65 74 61 |y or an undeleta| 00002210 62 6c 65 20 66 69 6c 65 3f 0a 20 34 29 20 57 68 |ble file?. 4) Wh| 00002220 61 74 20 63 61 6e 20 49 20 64 6f 20 69 66 20 2a |at can I do if *| 00002230 43 68 65 63 6b 4d 61 70 20 64 6f 65 73 6e 27 74 |CheckMap doesn't| 00002240 20 77 6f 72 6b 20 6f 72 20 74 65 6c 6c 73 20 6d | work or tells m| 00002250 65 20 74 68 61 74 20 74 68 65 20 6d 61 70 20 69 |e that the map i| 00002260 73 0a 20 20 20 20 69 6e 63 6f 6e 73 69 73 74 65 |s. inconsiste| 00002270 6e 74 3f 0a 20 35 29 20 41 72 65 20 74 68 65 72 |nt?. 5) Are ther| 00002280 65 20 73 6f 6d 65 20 64 61 6e 67 65 72 6f 75 73 |e some dangerous| 00002290 20 61 63 74 69 6f 6e 73 20 74 68 61 74 20 63 61 | actions that ca| 000022a0 6e 20 6c 65 61 64 20 74 6f 20 61 20 6d 61 70 20 |n lead to a map | 000022b0 63 6f 72 72 75 70 74 69 6f 6e 3f 0a 20 36 29 20 |corruption?. 6) | 000022c0 44 6f 65 73 20 61 20 6d 61 70 20 63 6f 72 72 75 |Does a map corru| 000022d0 70 74 69 6f 6e 20 69 6d 70 6c 79 20 74 68 61 74 |ption imply that| 000022e0 20 73 6f 6d 65 20 64 61 74 61 20 6f 6e 20 74 68 | some data on th| 000022f0 65 20 64 69 73 63 20 68 61 73 20 62 65 65 6e 20 |e disc has been | 00002300 63 6f 72 72 75 70 74 65 64 0a 20 20 20 20 74 6f |corrupted. to| 00002310 6f 3f 0a 20 37 29 20 48 6f 77 20 63 61 6e 20 49 |o?. 7) How can I| 00002320 20 66 69 6e 64 20 69 66 20 6d 79 20 64 69 73 63 | find if my disc| 00002330 20 69 73 20 45 2d 46 6f 72 6d 61 74 3f 0a 20 38 | is E-Format?. 8| 00002340 29 20 49 73 20 74 68 65 72 65 20 73 6f 6d 65 20 |) Is there some | 00002350 70 72 6f 67 72 61 6d 20 74 68 61 74 20 63 61 6e |program that can| 00002360 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 66 72 | be used to unfr| 00002370 61 67 6d 65 6e 74 20 74 68 65 20 64 69 73 63 3f |agment the disc?| 00002380 0a 0a 50 6f 73 73 69 62 6c 65 20 41 6e 73 77 65 |..Possible Answe| 00002390 72 73 2e 2e 2e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |rs....----------| 000023a0 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 20 31 29 20 49 |---------.. 1) I| 000023b0 73 20 2a 43 6f 6d 70 61 63 74 20 75 73 65 66 75 |s *Compact usefu| 000023c0 6c 20 6f 72 20 69 74 20 69 73 20 64 61 6e 67 65 |l or it is dange| 000023d0 72 6f 75 73 3f 0a 0a 4f 6e 20 45 2d 46 6f 72 6d |rous?..On E-Form| 000023e0 61 74 20 64 69 73 63 73 20 2a 43 6f 6d 70 61 63 |at discs *Compac| 000023f0 74 20 69 73 6e 27 74 20 72 65 61 6c 6c 79 20 75 |t isn't really u| 00002400 73 65 66 75 6c 20 62 75 74 20 69 74 20 63 61 6e |seful but it can| 00002410 20 62 65 20 75 73 65 64 20 73 61 66 65 6c 79 20 | be used safely | 00002420 69 66 0a 74 68 65 20 6d 61 70 20 69 73 20 67 6f |if.the map is go| 00002430 6f 64 2e 20 49 66 20 74 68 65 20 6d 61 70 20 69 |od. If the map i| 00002440 73 20 69 6e 63 6f 6e 73 69 73 74 65 6e 74 20 49 |s inconsistent I| 00002450 20 63 61 6e 27 74 20 61 73 73 75 72 65 20 79 6f | can't assure yo| 00002460 75 20 6f 66 20 69 74 73 0a 62 65 68 61 76 69 6f |u of its.behavio| 00002470 75 72 20 28 69 65 2e 20 49 20 63 61 6e 27 74 20 |ur (ie. I can't | 00002480 65 78 63 6c 75 64 65 20 74 68 61 74 20 69 74 20 |exclude that it | 00002490 63 61 6e 20 63 61 75 73 65 20 77 6f 72 73 65 20 |can cause worse | 000024a0 63 6f 72 72 75 70 74 69 6f 6e 73 29 2e 20 4e 6f |corruptions). No| 000024b0 74 65 0a 74 68 61 74 20 52 49 53 43 20 4f 53 20 |te.that RISC OS | 000024c0 63 61 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c |can automaticall| 000024d0 79 20 72 75 6e 20 61 20 27 73 75 62 73 65 74 27 |y run a 'subset'| 000024e0 20 6f 66 20 43 6f 6d 70 61 63 74 20 77 68 65 6e | of Compact when| 000024f0 20 69 74 20 68 61 73 20 74 6f 20 73 61 76 65 0a | it has to save.| 00002500 61 20 66 69 6c 65 20 28 65 73 70 65 63 69 61 6c |a file (especial| 00002510 6c 79 20 69 66 20 74 68 65 20 66 69 6c 65 20 69 |ly if the file i| 00002520 73 20 6c 61 72 67 65 20 61 6e 64 20 74 68 65 20 |s large and the | 00002530 66 72 65 65 20 73 70 61 63 65 20 69 73 20 6c 69 |free space is li| 00002540 6d 69 74 65 64 20 61 6e 64 0a 66 72 61 67 6d 65 |mited and.fragme| 00002550 6e 74 65 64 29 2e 0a 0a 20 32 29 20 43 61 6e 20 |nted)... 2) Can | 00002560 49 20 74 72 75 73 74 20 2a 43 68 65 63 6b 4d 61 |I trust *CheckMa| 00002570 70 3f 0a 0a 49 20 68 61 76 65 20 74 6f 20 61 64 |p?..I have to ad| 00002580 6d 69 74 20 74 68 61 74 20 43 68 65 63 6b 4d 61 |mit that CheckMa| 00002590 70 20 69 73 6e 27 74 20 61 20 76 65 72 79 20 77 |p isn't a very w| 000025a0 65 6c 6c 20 77 72 69 74 74 65 6e 20 63 6f 6d 6d |ell written comm| 000025b0 61 6e 64 20 62 75 74 20 69 66 20 69 74 20 73 61 |and but if it sa| 000025c0 79 73 0a 74 68 61 74 20 74 68 65 20 6d 61 70 20 |ys.that the map | 000025d0 69 73 20 67 6f 6f 64 2c 20 74 68 65 20 6d 61 70 |is good, the map| 000025e0 20 49 53 20 67 6f 6f 64 20 61 6e 64 20 79 6f 75 | IS good and you| 000025f0 20 68 61 76 65 20 6e 6f 20 6c 6f 73 74 20 73 70 | have no lost sp| 00002600 61 63 65 20 6f 6e 20 79 6f 75 72 20 64 69 73 63 |ace on your disc| 00002610 2e 0a 49 66 20 69 74 20 63 72 61 73 68 65 73 20 |..If it crashes | 00002620 74 68 65 20 63 6f 6d 70 75 74 65 72 20 6f 72 20 |the computer or | 00002630 69 66 20 69 74 20 73 61 79 73 20 22 4d 61 70 20 |if it says "Map | 00002640 69 6e 63 6f 6e 73 69 73 74 65 6e 74 20 77 69 74 |inconsistent wit| 00002650 68 20 64 69 72 65 63 74 6f 72 79 0a 74 72 65 65 |h directory.tree| 00002660 22 2c 20 79 6f 75 72 20 6d 61 70 20 6f 72 20 64 |", your map or d| 00002670 69 72 65 63 74 6f 72 79 20 73 74 72 75 63 74 75 |irectory structu| 00002680 72 65 20 49 53 20 64 61 6d 61 67 65 64 20 61 6e |re IS damaged an| 00002690 64 20 74 68 65 20 64 61 6d 61 67 65 20 63 61 6e |d the damage can| 000026a0 20 77 6f 72 73 65 6e 20 69 66 0a 6e 6f 74 20 63 | worsen if.not c| 000026b0 75 72 65 64 20 73 6f 6f 6e 2e 0a 0a 20 33 29 20 |ured soon... 3) | 000026c0 57 68 61 74 20 63 61 6e 20 49 20 64 6f 20 77 69 |What can I do wi| 000026d0 74 68 20 61 20 62 72 6f 6b 65 6e 20 64 69 72 65 |th a broken dire| 000026e0 63 74 6f 72 79 20 6f 72 20 61 6e 20 75 6e 64 65 |ctory or an unde| 000026f0 6c 65 74 61 62 6c 65 20 66 69 6c 65 3f 0a 0a 41 |letable file?..A| 00002700 20 62 72 6f 6b 65 6e 20 64 69 72 65 63 74 6f 72 | broken director| 00002710 79 20 63 61 6e 6e 6f 74 20 62 65 20 64 65 6c 65 |y cannot be dele| 00002720 74 65 64 20 75 73 69 6e 67 20 73 74 61 6e 64 61 |ted using standa| 00002730 72 64 20 4f 53 20 63 6f 6d 6d 61 6e 64 73 20 61 |rd OS commands a| 00002740 6e 64 20 69 74 20 63 61 6e 0a 6a 75 73 74 20 62 |nd it can.just b| 00002750 65 20 63 6f 6e 73 69 64 65 72 65 64 20 61 73 20 |e considered as | 00002760 61 20 27 6e 6f 72 6d 61 6c 27 20 75 6e 64 65 6c |a 'normal' undel| 00002770 65 74 61 62 6c 65 20 66 69 6c 65 2e 20 54 6f 20 |etable file. To | 00002780 72 65 6d 6f 76 65 20 69 74 20 79 6f 75 20 6d 75 |remove it you mu| 00002790 73 74 20 75 73 65 0a 73 6f 6d 65 20 64 69 72 65 |st use.some dire| 000027a0 63 74 6f 72 79 20 6d 61 6e 69 70 75 6c 61 74 69 |ctory manipulati| 000027b0 6f 6e 20 70 72 6f 67 72 61 6d 20 28 6c 69 6b 65 |on program (like| 000027c0 20 4c 6f 6f 6b 20 53 79 73 74 65 6d 27 73 20 44 | Look System's D| 000027d0 69 73 63 20 44 6f 63 74 6f 72 3f 29 20 6f 72 20 |isc Doctor?) or | 000027e0 74 68 65 0a 73 68 61 72 65 77 61 72 65 20 70 72 |the.shareware pr| 000027f0 6f 67 72 61 6d 73 20 27 65 6c 69 6d 69 6e 61 74 |ograms 'eliminat| 00002800 65 27 20 28 64 69 73 74 72 69 62 75 74 65 64 20 |e' (distributed | 00002810 77 69 74 68 20 27 66 73 63 6b 27 29 20 6f 72 20 |with 'fsck') or | 00002820 27 46 53 43 4b b3 27 2e 0a 0a 20 34 29 20 57 68 |'FSCK.'... 4) Wh| 00002830 61 74 20 63 61 6e 20 49 20 64 6f 20 69 66 20 2a |at can I do if *| 00002840 43 68 65 63 6b 4d 61 70 20 64 6f 65 73 6e 27 74 |CheckMap doesn't| 00002850 20 77 6f 72 6b 20 6f 72 20 74 65 6c 6c 73 20 6d | work or tells m| 00002860 65 20 74 68 61 74 20 74 68 65 20 6d 61 70 20 69 |e that the map i| 00002870 73 0a 20 20 20 20 69 6e 63 6f 6e 73 69 73 74 65 |s. inconsiste| 00002880 6e 74 3f 0a 0a 41 70 70 61 72 65 6e 74 6c 79 20 |nt?..Apparently | 00002890 74 68 65 20 6f 6e 6c 79 20 74 68 69 6e 67 20 79 |the only thing y| 000028a0 6f 75 20 63 61 6e 20 64 6f 20 69 73 20 74 6f 20 |ou can do is to | 000028b0 74 72 79 20 74 68 65 20 73 68 61 72 65 77 61 72 |try the sharewar| 000028c0 65 20 70 72 6f 67 72 61 6d 20 27 66 73 63 6b 27 |e program 'fsck'| 000028d0 0a 28 6f 72 20 74 68 65 20 6e 65 77 20 27 46 53 |.(or the new 'FS| 000028e0 43 4b b3 27 29 20 74 68 61 74 20 70 65 72 66 6f |CK.') that perfo| 000028f0 72 6d 73 20 74 68 65 20 73 61 6d 65 20 74 61 73 |rms the same tas| 00002900 6b 20 61 73 20 2a 43 68 65 63 6b 4d 61 70 20 62 |k as *CheckMap b| 00002910 75 74 20 61 6c 73 6f 20 74 72 69 65 73 0a 74 6f |ut also tries.to| 00002920 20 66 69 78 20 74 68 65 20 64 61 6d 61 67 65 2e | fix the damage.| 00002930 0a 0a 20 35 29 20 41 72 65 20 74 68 65 72 65 20 |.. 5) Are there | 00002940 73 6f 6d 65 20 64 61 6e 67 65 72 6f 75 73 20 61 |some dangerous a| 00002950 63 74 69 6f 6e 73 20 74 68 61 74 20 63 61 6e 20 |ctions that can | 00002960 6c 65 61 64 20 74 6f 20 61 20 6d 61 70 20 63 6f |lead to a map co| 00002970 72 72 75 70 74 69 6f 6e 3f 0a 0a 49 20 61 6d 20 |rruption?..I am | 00002980 6e 6f 74 20 74 68 65 20 6f 6e 6c 79 20 70 65 72 |not the only per| 00002990 73 6f 6e 20 77 68 6f 20 74 68 69 6e 6b 73 20 74 |son who thinks t| 000029a0 68 61 74 20 68 61 76 69 6e 67 20 61 20 6e 65 61 |hat having a nea| 000029b0 72 6c 79 20 66 75 6c 6c 20 48 44 20 28 73 61 79 |rly full HD (say| 000029c0 2c 20 6c 65 73 73 0a 74 68 61 6e 20 31 4d 62 20 |, less.than 1Mb | 000029d0 66 72 65 65 29 20 63 61 6e 20 62 65 20 64 61 6e |free) can be dan| 000029e0 67 65 72 6f 75 73 2c 20 65 73 70 65 63 69 61 6c |gerous, especial| 000029f0 6c 79 20 69 66 20 79 6f 75 20 68 61 6e 64 6c 65 |ly if you handle| 00002a00 20 76 65 72 79 20 6c 61 72 67 65 20 66 69 6c 65 | very large file| 00002a10 73 2e 0a 55 73 69 6e 67 20 62 75 67 67 65 64 20 |s..Using bugged | 00002a20 70 72 6f 67 72 61 6d 73 20 74 68 61 74 20 73 6f |programs that so| 00002a30 6d 65 74 69 6d 65 73 20 63 61 6e 20 63 72 61 73 |metimes can cras| 00002a40 68 20 74 68 65 20 63 6f 6d 70 75 74 65 72 20 77 |h the computer w| 00002a50 68 69 6c 65 20 69 74 20 69 73 0a 77 72 69 74 69 |hile it is.writi| 00002a60 6e 67 20 74 6f 20 74 68 65 20 48 44 20 69 73 20 |ng to the HD is | 00002a70 52 45 41 4c 4c 59 20 64 61 6e 67 65 72 6f 75 73 |REALLY dangerous| 00002a80 20 62 75 74 20 66 6f 72 74 75 6e 61 74 65 6c 79 | but fortunately| 00002a90 20 74 68 65 72 65 20 61 72 65 20 76 65 72 79 20 | there are very | 00002aa0 66 65 77 0a 70 72 6f 67 72 61 6d 73 20 6f 66 20 |few.programs of | 00002ab0 74 68 69 73 20 6b 69 6e 64 20 61 72 6f 75 6e 64 |this kind around| 00002ac0 2e 2e 2e 0a 0a 20 36 29 20 44 6f 65 73 20 61 20 |..... 6) Does a | 00002ad0 6d 61 70 20 63 6f 72 72 75 70 74 69 6f 6e 20 69 |map corruption i| 00002ae0 6d 70 6c 79 20 74 68 61 74 20 73 6f 6d 65 20 64 |mply that some d| 00002af0 61 74 61 20 6f 6e 20 74 68 65 20 64 69 73 63 20 |ata on the disc | 00002b00 68 61 73 20 62 65 65 6e 20 63 6f 72 72 75 70 74 |has been corrupt| 00002b10 65 64 0a 20 20 20 20 74 6f 6f 3f 0a 0a 47 65 6e |ed. too?..Gen| 00002b20 65 72 61 6c 6c 79 20 6e 6f 2e 20 46 6f 72 20 65 |erally no. For e| 00002b30 78 61 6d 70 6c 65 20 69 66 20 74 68 65 20 63 6f |xample if the co| 00002b40 72 72 75 70 74 69 6f 6e 20 77 61 73 20 63 61 75 |rruption was cau| 00002b50 73 65 64 20 62 79 20 61 20 64 65 6c 65 74 65 20 |sed by a delete | 00002b60 6f 70 65 72 61 74 69 6f 6e 0a 74 68 61 74 20 77 |operation.that w| 00002b70 61 73 20 69 6e 74 65 72 72 75 70 74 65 64 20 61 |as interrupted a| 00002b80 66 74 65 72 20 69 74 20 72 65 6d 6f 76 65 64 20 |fter it removed | 00002b90 74 68 65 20 66 69 6c 65 20 66 72 6f 6d 20 74 68 |the file from th| 00002ba0 65 20 64 69 72 65 63 74 6f 72 79 20 62 75 74 20 |e directory but | 00002bb0 62 65 66 6f 72 65 0a 74 68 65 20 72 65 6d 6f 76 |before.the remov| 00002bc0 61 6c 20 66 72 6f 6d 20 74 68 65 20 6d 61 70 2c |al from the map,| 00002bd0 20 74 68 65 20 6d 61 70 20 77 69 6c 6c 20 62 65 | the map will be| 00002be0 20 69 6e 63 6f 6e 73 69 73 74 65 6e 74 20 62 75 | inconsistent bu| 00002bf0 74 20 6e 6f 20 64 61 74 61 20 68 61 73 20 62 65 |t no data has be| 00002c00 65 6e 0a 6c 6f 73 74 2f 6f 76 65 72 77 72 69 74 |en.lost/overwrit| 00002c10 74 65 6e 2e 0a 4f 6e 20 74 68 65 20 6f 74 68 65 |ten..On the othe| 00002c20 72 20 68 61 6e 64 2c 20 61 20 27 42 72 6f 6b 65 |r hand, a 'Broke| 00002c30 6e 20 44 69 72 65 63 74 6f 72 79 27 20 63 61 6e |n Directory' can| 00002c40 20 62 65 20 74 68 65 20 65 76 69 64 65 6e 74 20 | be the evident | 00002c50 73 69 67 6e 20 74 68 61 74 0a 73 6f 6d 65 74 68 |sign that.someth| 00002c60 69 6e 67 20 61 63 74 75 61 6c 6c 79 20 68 61 73 |ing actually has| 00002c70 20 62 65 65 6e 20 63 6f 72 72 75 70 74 65 64 20 | been corrupted | 00002c80 6f 6e 20 74 68 65 20 64 69 73 63 2c 20 73 6f 20 |on the disc, so | 00002c90 79 6f 75 20 63 61 6e 20 66 69 6e 64 20 74 68 61 |you can find tha| 00002ca0 74 20 73 6f 6d 65 0a 6f 74 68 65 72 20 66 69 6c |t some.other fil| 00002cb0 65 73 20 61 72 65 20 64 61 6d 61 67 65 64 2e 20 |es are damaged. | 00002cc0 49 6e 20 66 61 63 74 2c 20 52 49 53 43 20 4f 53 |In fact, RISC OS| 00002cd0 20 63 61 6e 20 65 61 73 69 6c 79 20 6e 6f 74 69 | can easily noti| 00002ce0 63 65 20 74 68 65 20 77 72 6f 6e 67 0a 64 69 72 |ce the wrong.dir| 00002cf0 65 63 74 6f 72 79 20 68 65 61 64 65 72 2f 63 68 |ectory header/ch| 00002d00 65 63 6b 73 75 6d 20 62 75 74 20 69 74 20 63 61 |ecksum but it ca| 00002d10 6e 6e 6f 74 20 72 65 61 6c 6c 79 20 75 6e 64 65 |nnot really unde| 00002d20 72 73 74 61 6e 64 20 69 66 20 61 20 74 65 78 74 |rstand if a text| 00002d30 20 66 69 6c 65 20 68 61 73 0a 62 65 65 6e 20 63 | file has.been c| 00002d40 6f 72 72 75 70 74 65 64 21 0a 0a 20 37 29 20 48 |orrupted!.. 7) H| 00002d50 6f 77 20 63 61 6e 20 49 20 66 69 6e 64 20 69 66 |ow can I find if| 00002d60 20 6d 79 20 64 69 73 63 20 69 73 20 45 2d 46 6f | my disc is E-Fo| 00002d70 72 6d 61 74 3f 0a 0a 59 6f 75 20 63 61 6e 20 75 |rmat?..You can u| 00002d80 73 65 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 2a |se the command *| 00002d90 4d 61 70 2e 20 49 66 20 69 74 20 73 61 79 73 20 |Map. If it says | 00002da0 22 6e 65 77 20 6d 61 70 22 20 79 6f 75 20 68 61 |"new map" you ha| 00002db0 76 65 20 61 6e 20 45 2d 46 6f 72 6d 61 74 20 64 |ve an E-Format d| 00002dc0 69 73 63 2c 0a 6f 74 68 65 72 77 69 73 65 20 79 |isc,.otherwise y| 00002dd0 6f 75 20 68 61 76 65 20 61 6e 20 6f 6c 64 20 44 |ou have an old D| 00002de0 2d 46 6f 72 6d 61 74 20 64 69 73 63 2e 20 57 68 |-Format disc. Wh| 00002df0 65 6e 20 79 6f 75 20 75 73 65 20 2a 4d 61 70 2c |en you use *Map,| 00002e00 20 62 65 20 73 75 72 65 20 74 6f 20 62 65 20 69 | be sure to be i| 00002e10 6e 0a 74 68 65 20 63 6f 72 72 65 63 74 20 66 69 |n.the correct fi| 00002e20 6c 65 20 73 79 73 74 65 6d 2c 20 65 76 65 6e 74 |le system, event| 00002e30 75 61 6c 6c 79 20 75 73 65 20 74 68 65 20 63 6f |ually use the co| 00002e40 6d 6d 61 6e 64 20 22 58 58 58 58 58 3a 4d 61 70 |mmand "XXXXX:Map| 00002e50 22 20 77 68 65 72 65 20 58 58 58 58 58 0a 69 73 |" where XXXXX.is| 00002e60 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 | the name of the| 00002e70 20 66 69 6c 65 20 73 79 73 74 65 6d 20 28 69 65 | file system (ie| 00002e80 2e 20 49 44 45 46 53 2c 20 41 44 46 53 2c 20 53 |. IDEFS, ADFS, S| 00002e90 43 53 49 2c 20 65 74 63 2e 29 2e 20 49 66 20 74 |CSI, etc.). If t| 00002ea0 68 65 20 2a 4d 61 70 0a 63 6f 6d 6d 61 6e 64 20 |he *Map.command | 00002eb0 64 6f 65 73 6e 27 74 20 65 78 69 73 74 2c 20 79 |doesn't exist, y| 00002ec0 6f 75 72 20 66 69 6c 65 20 73 79 73 74 65 6d 20 |our file system | 00002ed0 69 73 6e 27 74 20 46 69 6c 65 43 6f 72 65 20 62 |isn't FileCore b| 00002ee0 61 73 65 64 20 28 6c 69 6b 65 20 4d 65 6d 46 53 |ased (like MemFS| 00002ef0 2c 0a 41 72 63 46 53 2c 20 53 70 61 72 6b 46 53 |,.ArcFS, SparkFS| 00002f00 29 2c 20 73 6f 20 77 68 61 74 20 69 73 20 64 65 |), so what is de| 00002f10 73 63 72 69 62 65 64 20 69 6e 20 74 68 69 73 20 |scribed in this | 00002f20 66 69 6c 65 20 63 61 6e 27 74 20 62 65 20 61 70 |file can't be ap| 00002f30 70 6c 69 65 64 20 74 6f 20 69 74 2e 0a 0a 20 38 |plied to it... 8| 00002f40 29 20 49 73 20 74 68 65 72 65 20 73 6f 6d 65 20 |) Is there some | 00002f50 70 72 6f 67 72 61 6d 20 74 68 61 74 20 63 61 6e |program that can| 00002f60 20 62 65 20 75 73 65 64 20 74 6f 20 75 6e 66 72 | be used to unfr| 00002f70 61 67 6d 65 6e 74 20 74 68 65 20 64 69 73 63 3f |agment the disc?| 00002f80 0a 0a 4e 6f 2e 20 48 6f 77 65 76 65 72 2c 20 73 |..No. However, s| 00002f90 75 63 68 20 61 20 70 72 6f 67 72 61 6d 20 77 69 |uch a program wi| 00002fa0 6c 6c 20 6e 6f 74 20 62 65 20 63 6f 6d 70 6c 65 |ll not be comple| 00002fb0 74 65 6c 79 20 75 73 65 66 75 6c 20 73 69 6e 63 |tely useful sinc| 00002fc0 65 20 52 49 53 43 20 4f 53 0a 61 6c 72 65 61 64 |e RISC OS.alread| 00002fd0 79 20 74 72 69 65 73 20 6b 65 65 70 20 66 69 6c |y tries keep fil| 00002fe0 65 73 20 75 6e 66 72 61 67 6d 65 6e 74 65 64 2e |es unfragmented.| 00002ff0 20 54 68 65 20 2a 43 6f 6d 70 61 63 74 20 63 6f | The *Compact co| 00003000 6d 6d 61 6e 64 20 63 61 6e 20 62 65 20 75 73 65 |mmand can be use| 00003010 66 75 6c 20 74 6f 0a 75 6e 66 72 61 67 6d 65 6e |ful to.unfragmen| 00003020 74 20 74 68 65 20 66 72 65 65 20 73 70 61 63 65 |t the free space| 00003030 20 28 61 6e 64 20 73 6f 6d 65 74 69 6d 65 73 20 | (and sometimes | 00003040 74 68 65 20 66 69 6c 65 73 20 74 6f 6f 29 20 69 |the files too) i| 00003050 6e 73 69 64 65 20 61 20 7a 6f 6e 65 2e 0a 41 20 |nside a zone..A | 00003060 73 69 6d 69 6c 61 72 20 70 72 6f 67 72 61 6d 20 |similar program | 00003070 28 62 75 74 20 6d 6f 72 65 20 75 73 65 66 75 6c |(but more useful| 00003080 29 20 73 68 6f 75 6c 64 20 62 65 20 61 62 6c 65 |) should be able| 00003090 20 74 6f 20 6d 6f 76 65 20 74 68 65 20 6d 6f 73 | to move the mos| 000030a0 74 20 75 73 65 64 0a 66 69 6c 65 73 20 28 62 75 |t used.files (bu| 000030b0 74 20 6f 6e 6c 79 20 74 68 65 20 6f 6e 65 73 20 |t only the ones | 000030c0 74 68 61 74 20 61 72 65 20 6e 6f 74 20 63 6f 6e |that are not con| 000030d0 74 69 6e 75 61 6c 6c 79 20 75 70 64 61 74 65 64 |tinually updated| 000030e0 29 20 6e 65 61 72 20 74 68 65 20 6d 69 64 64 6c |) near the middl| 000030f0 65 0a 6f 66 20 74 68 65 20 64 69 73 63 20 28 69 |e.of the disc (i| 00003100 65 2e 20 6e 65 61 72 20 74 68 65 20 72 6f 6f 74 |e. near the root| 00003110 20 64 69 72 65 63 74 6f 72 79 29 20 62 75 74 20 | directory) but | 00003120 74 68 69 73 20 77 69 6c 6c 20 72 65 71 75 69 72 |this will requir| 00003130 65 20 61 20 6c 6f 74 20 6f 66 0a 74 69 6d 65 2c |e a lot of.time,| 00003140 20 69 73 20 67 65 6e 65 72 61 6c 6c 79 20 64 61 | is generally da| 00003150 6e 67 65 72 6f 75 73 20 61 6e 64 20 77 69 6c 6c |ngerous and will| 00003160 20 6e 6f 74 20 70 72 6f 76 69 64 65 20 28 70 72 | not provide (pr| 00003170 6f 62 61 62 6c 79 29 20 61 20 67 72 65 61 74 0a |obably) a great.| 00003180 69 6d 70 72 6f 76 65 6d 65 6e 74 20 69 6e 20 64 |improvement in d| 00003190 69 73 63 20 61 63 63 65 73 73 20 74 69 6d 65 2e |isc access time.| 000031a0 0a 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |..--------------| 000031b0 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| * 000031f0 0a 49 27 64 20 6c 69 6b 65 20 74 6f 20 74 68 61 |.I'd like to tha| 00003200 6e 6b 20 61 6c 6c 20 74 68 65 20 70 65 6f 70 6c |nk all the peopl| 00003210 65 20 77 68 6f 20 63 6f 6e 74 72 69 62 75 74 65 |e who contribute| 00003220 64 20 74 6f 20 70 72 6f 64 75 63 65 20 61 20 27 |d to produce a '| 00003230 77 6f 72 6b 69 6e 67 27 0a 76 65 72 73 69 6f 6e |working'.version| 00003240 20 6f 66 20 74 68 69 73 20 64 6f 63 75 6d 65 6e | of this documen| 00003250 74 2e 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |t..-------------| 00003260 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d |----------------| * 000032a0 2d 0a 0a 49 66 20 79 6f 75 20 68 61 76 65 20 61 |-..If you have a| 000032b0 6e 79 20 6f 74 68 65 72 20 71 75 65 73 74 69 6f |ny other questio| 000032c0 6e 20 72 65 6c 61 74 65 64 20 74 6f 20 48 44 20 |n related to HD | 000032d0 6d 61 70 2c 20 73 74 72 75 63 74 75 72 65 2c 20 |map, structure, | 000032e0 64 69 72 65 63 74 6f 72 69 65 73 2c 0a 65 74 63 |directories,.etc| 000032f0 2e 20 79 6f 75 20 63 61 6e 20 63 6f 6e 74 61 63 |. you can contac| 00003300 74 20 6d 65 20 6f 72 20 70 6f 73 74 20 74 6f 20 |t me or post to | 00003310 63 6f 6d 70 2e 73 79 73 2e 61 63 6f 72 6e 2e 2a |comp.sys.acorn.*| 00003320 2e 20 41 6e 79 20 69 6e 74 65 72 65 73 74 69 6e |. Any interestin| 00003330 67 20 71 75 65 73 74 69 6f 6e 0a 77 69 6c 6c 20 |g question.will | 00003340 62 65 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 |be added to the | 00003350 22 50 6f 73 73 69 62 6c 65 20 71 75 65 73 74 69 |"Possible questi| 00003360 6f 6e 73 22 2e 0a 4e 6f 74 65 20 74 68 61 74 20 |ons"..Note that | 00003370 49 20 63 61 6e 20 62 65 20 77 72 6f 6e 67 2c 20 |I can be wrong, | 00003380 69 6e 65 78 61 63 74 20 61 6e 64 20 76 61 67 75 |inexact and vagu| 00003390 65 2c 20 73 6f 20 61 6e 79 20 63 6f 72 72 65 63 |e, so any correc| 000033a0 74 69 6f 6e 20 69 73 20 77 65 6c 63 6f 6d 65 2e |tion is welcome.| 000033b0 0a 49 66 20 79 6f 75 20 74 68 69 6e 6b 20 74 68 |.If you think th| 000033c0 61 74 20 74 68 69 73 20 66 69 6c 65 20 69 73 20 |at this file is | 000033d0 75 73 65 6c 65 73 73 20 69 67 6e 6f 72 65 20 69 |useless ignore i| 000033e0 74 2c 20 69 66 20 79 6f 75 20 74 68 69 6e 6b 20 |t, if you think | 000033f0 69 74 20 69 73 20 62 61 64 6c 79 0a 77 72 69 74 |it is badly.writ| 00003400 74 65 6e 2c 20 76 61 67 75 65 2c 20 65 74 63 2e |ten, vague, etc.| 00003410 20 70 6c 65 61 73 65 20 63 6f 6e 74 61 63 74 20 | please contact | 00003420 6d 65 2c 20 70 6f 73 73 69 62 6c 79 20 77 69 74 |me, possibly wit| 00003430 68 20 73 6f 6d 65 20 61 6d 65 6e 64 6d 65 6e 74 |h some amendment| 00003440 2e 0a 0a 0a 41 6e 20 48 54 4d 4c 20 76 65 72 73 |....An HTML vers| 00003450 69 6f 6e 20 6f 66 20 74 68 69 73 20 64 6f 63 75 |ion of this docu| 00003460 6d 65 6e 74 20 69 73 20 61 76 61 69 6c 61 62 6c |ment is availabl| 00003470 65 20 61 74 3a 0a 68 74 74 70 3a 2f 2f 63 64 63 |e at:.http://cdc| 00003480 38 67 35 2e 63 64 63 2e 70 6f 6c 69 6d 69 2e 69 |8g5.cdc.polimi.i| 00003490 74 2f 7e 70 65 6c 30 30 31 35 2f 4d 61 70 45 78 |t/~pel0015/MapEx| 000034a0 70 6c 2e 68 74 6d 6c 0a 0a 0a 49 20 63 61 6e 20 |pl.html...I can | 000034b0 62 65 20 63 6f 6e 74 61 63 74 65 64 20 61 74 20 |be contacted at | 000034c0 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 64 |the following ad| 000034d0 64 72 65 73 73 3a 0a 70 65 6c 30 30 31 35 40 63 |dress:.pel0015@c| 000034e0 64 63 38 67 35 2e 63 64 63 2e 70 6f 6c 69 6d 69 |dc8g5.cdc.polimi| 000034f0 2e 69 74 0a 49 66 20 79 6f 75 20 64 6f 6e 27 74 |.it.If you don't| 00003500 20 72 65 63 65 69 76 65 20 61 20 72 65 70 6c 79 | receive a reply| 00003510 20 28 6f 72 20 69 66 20 74 68 65 20 6d 65 73 73 | (or if the mess| 00003520 61 67 65 20 69 73 20 62 6f 75 6e 63 65 64 29 20 |age is bounced) | 00003530 49 20 63 61 6e 20 61 6c 73 6f 20 62 65 0a 63 6f |I can also be.co| 00003540 6e 74 61 63 74 65 64 20 61 74 3a 0a 73 65 72 67 |ntacted at:.serg| 00003550 69 6f 40 66 72 65 65 62 73 64 2e 66 69 72 73 74 |io@freebsd.first| 00003560 2e 67 6d 64 2e 64 65 0a 0a 57 57 57 3a 0a 68 74 |.gmd.de..WWW:.ht| 00003570 74 70 3a 2f 2f 63 64 63 38 67 35 2e 63 64 63 2e |tp://cdc8g5.cdc.| 00003580 70 6f 6c 69 6d 69 2e 69 74 2f 7e 70 65 6c 30 30 |polimi.it/~pel00| 00003590 31 35 2f 0a |15/.| 00003594