Files and folders used by SuperMemo

These are the files used by a typical SuperMemo installation:

SuperMemo folder - usually c:\sm8, c:\sm98, c:\sm99, etc.

  • sm99.exe - the program: SuperMemo 99
  • bin - some working files used by SuperMemo
    • supermemo.ini - text file with some parameter settings used by SuperMemo. You can modify this file manually. Please do it with caution and make a back-up before introducing any changes
    • layout.ini - layouts used by SuperMemo. This file also can be modified manually if backed up safely
    • tips.txt - text file with tips used in Question of the Day. You can modify this file manually
    • smhelp.chm - help file for SuperMemo (if you are not reading this text over the Internet, you are probably reading this file). If you download shorthelp.chm, you should rename it to smhelp.chm (if you want SuperMemo to use it as a substitute for the full help file). You can download smhelp.chm from here
    • sm7imprt.exe - optional program that is needed when importing collections from SuperMemo 6 for DOS or from SuperMemo 7 for Windows
  • systems - default folder for keeping collections used by SuperMemo
    • <name of the collection>.kno - file with the most important parameters of the collection such as the total number of elements, number of memorized elements, date of creating the collection, etc. For more details see below
    • <name of the collection> - folder with the remaining files of the collection. You must copy this folder along the above kno file if you want to preserve the integrity of the collection. It is recommended that you always use File : Copy collection instead
      • collection.ini - text file with some parameters used by the collection. You can modify this file manually. Please do it with caution and make a back-up before introducing any changes
      • info - most important information files used by the collection
        • compon.dat - binary file with the layout and attributes of all components used in the collection
        • elinfo.dat - information about all individual elements: A-factor, last repetition date, number of repetitions, forgetting index, task number, etc.
        • contents.dat - information about the structure of the knowledge tree. Each element has its parent, siblings and the first child recorded in this file along with the number of children and the number of descendants
        • reps.dat - repetition history of all individual elements. This file is optional and you can remove it with File : Tools : Reset parameters : Repetition history
        • burden.dat - file with the number of repetition planned for each day and the pointer to the first item on the repetition list for each day (this pointer points to elinfo.dat in which each element keeps the pointer to the next element belonging to the repetition list). You can easily find all your collections by searching for all burden.dat files. Additionally, you can see which of those collections are subject to learning as this file is zero-sized before the learning process begins
        • intact.dat - element subset file with all pending elements in the order as they appear in the pending queue
        • sm8opt.dat - optimization data record file used by the Algorithm-SM8. Read more about this record in: Implementing SuperMemo with sm8opt.dll
        • drill.dat - element subset file with all elements scheduled for the final drill (i.e. the final drill queue). You can delete this file manually (the final drill queue will be emptied)
        • history.dat - element subset file with the last fifty most recently visited elements. You can always delete this file manually
      • registry - registries used by the collection (except translation and transcription registries; see below)
        • text.* - text registry files
          • text.inf - information about all registry members stored in the text registry (e.g. number of using elements, pointer to the text.reg file storing the name of the text registry member, pointer to the text.lst file storing the list of elements using a given member, etc.)
          • text. lst - list of all element using all individual text registry members
          • text.ptr - registry subset storing the sorted subset of all members in the text registry
          • text.reg - names of all text registry members. You can view this file in any file editor. If you opt for editing this file, never change the length of individual records. This would destroy the integrity of the text registry
          • text.rtf - rich texts used by the text registry in one single file (this file is compacted if you run File : Repair collection and choose Rebuild registries)
          • text.su1, text.su2, etc. - subset files generated with search operations. First search generates the file su1. Second search (e.g. in AND-searching) generates su2, etc. SuperMemo limits the number of subsets to five. You can always delete these files manually
          • - file with the sorted subset of registry members generated when sorting the registry. You can always delete this file manually
          • text.ord - file with the sorted subset of registry members generated while searching the registry. You can always delete this file manually
        • font.* - font registry files
        • sound.*, etc. etc.
      • elements - multimedia files associated with individual registries such as video, sound, images, html, OLE, scripts, etc. You can edit all those files but you must not rename or move them as this would destroy the integrity of the collection. The elements folder can be transferred to secondary storage (e.g. with File : Tools : Semi-copy) and be stored on a CD-ROM or CDR. This way substantial hard disk savings can be made. The folder tree in elements is growing gradually as you are adding new files to the system. However, it sticks to the 40-files-per-folder limit to maximize the performance on CD-ROM media
      • tasks - tasklists associated with a given collection
        • <tasklist name>.dat - task data such as value, time, deadline function, etc.
        • <tasklist name>.ptr -  sorted tasklist pointers used when displaying tasks in Tasklist Manager
        • <tasklist name>.txt - text file exported with Import in Tasklist Manager. This file can always be deleted manually
      • translat - translation registries available for the collection (see: Tools : Options : Language : Collection translation). You can delete this folder; however, the translations will become unavailable
      • subsets - element subsets created by the user. You can delete this folder if you do not need the subsets. Read more: Using subsets. Two typical subsets are: last_subset.sub (contents of the last used browser that can be reused with View : Last browser) and searched.sub (results of the last search that can be reused with View : Search results)
      • reports - text files with reports generated by SuperMemo (e.g. recovery report, translation import report, transfer report, etc.). You can delete this folder if you do not need these reports. File : Tools : Garbage deletes this folder
      • files - other files used by SuperMemo (e.g. template files). You can delete this folder
      • font -  true type font files that will be installed in Windows first time the collection is run. Upon installing, the font file is renamed with an underline in front of the name. For example hiragana.ttf will be renamed to _hiragana.ttf
      • temp - temporary files used by SuperMemo. You can always delete this folder. Note, however, that you will lose user recordings generated in pronunciation exercises (option Recorder on the sound component's pop-up menu)
  • help - SuperMemo help in HTML format. This help does not have to be installed if you can view CHM files on your computer. In the latter case, use Tools : Options : SuperMemo : Help system : Microsoft Help to use smhelp.chm in the bin subfolder (see above)
  • translat - SuperMemo localization table files used in displaying various language interfaces of SuperMemo (see: Tools : Options : Language : Localization table)
  • phonetic - phonetic transcription registries (see: Tools : Options : Language : Phonetic transcription) and phonetic transcription fonts
  • filters - filter files for processing texts in collections (extension flt)
  • alg - plug-in algorithm DLLs and accompanying files

Most important fields of the KNO file

  • Total,Memorized:longint; - the number of undeleted elements in the collection and the number of memorized elements

  • AllocatedFileSpaceSlots:longint; - number of slots allocated for files in the elements folder

  • Version:byte; - collection structure version number (for checking compatibility with the used software release)

  • Burden:real48; - the average number of items to repeated per day

  • FirstDay,LastDay:word; - first day of the learning process relative to Jan 1, 1980, and the last day on which repetitions have been cleared (relative to FirstDay)

  • DefaultFI:byte; - default forgetting index in the collection

  • MeasuredFI:real48; - measured forgetting index

  • MeasuredFICases:word; - the number of repetitions contributing to MeasuredFI

  • FutureReps:real48; - not used in the current version SuperMemo

  • ALR,AFI, AR,AL,AI,AF,ATim,AG:real48; - various averages: Average Last Repetition, Average FI, AverageRepetition, AverageLapses, AverageInterval, AverageFactor, AverageTime, and  AverageGrade

  • AFactorDistribution:array[1..20] of word;

  • IntervalDistribution:array[1..13] of word;

  • LapsesDistribution:array[1..15] of word;

  • RepetitionsDistribution:array[1..20] of word;

  • author specific data, repetition time measurements, repetition counters, reserved fields, collection version, etc.

The size of variables used above in bytes is: longint 4, byte 1, real48 6, and word 2.

Frequently Asked Questions

Your collection can suddenly appear empty!
With luck, you can recover from "empty backup"! 

(Marcin Piekarniak, Poland, Dec 2, 1997)
How to easily back up Advanced English 97? In Advanced English 94 the entire system could be compressed to a 1.4 MB file!
You can backup the learning process only. This way only the data pertaining to items in the learning process will be stored (not items themselves). Use File : Tools : Export : Learning process to export the data. Later, upon reinstalling Advanced English 97, you can restore the learning process with File : Tools : Import : Learning process