Race Folder Files
For what a race folder is, where folders live on disk, and the high-level overview of key files, see Race Folder Basics in RunScore Basics. To open a sample race and reach the Listing screen, see Opening a Race.
This page goes deeper into the file structure — especially files that listing commands read from or that RunScore generates from your events.
Race folder file structure
The table below lists every file in a typical race folder. Rows marked (basics) are summarized in RunScore Basics; the sections that follow expand on the rest and on listing-relevant details.
| File | Purpose |
|---|---|
ENTRIES.FRM (basics) | Database format file — field names and layout |
ENTRIES.DTA | Main participant database (flat file, one record per runner) |
ENTRIES.val.xml | Field validation rules |
race.ini | Backup of online configuration, created when RunScore closes |
Events.xml (basics) | Defines scoring events |
Entries.ini (basics) | Race configuration and custom variables |
*.FN2 | Auto-generated finish-order data per event |
*.TM4 | Auto-generated finish-time data per event |
*.lst, *.rsm, @…lst (basics) | Listing, macro, and LSM files — see Introduction |
ENTRIES.FRM and ENTRIES.DTA
ENTRIES.FRM defines each field's name, length, and attributes. Listing files use those names in Field and Select commands.
RunScore creates ENTRIES.DTA from ENTRIES.FRM. It stores all participant data — names, addresses, ages, bib numbers, and every other field. It is a flat file: each participant occupies one fixed-length record. The field layout in ENTRIES.DTA matches the format file.
ENTRIES.val.xml
Stores input validation rules — allowed and required values and other constraints that help prevent data entry errors.
If this file does not exist, RunScore creates it the first time ENTRIES.FRM runs. In its empty state it contains only a <fields></fields> node.
Validation rules are set in the Field Properties dialog, available from Design Screen or while editing fields on the Enter/Edit Names screen.
race.ini
Created when RunScore closes. It backs up information needed to restore online configuration.
Events.xml
Defines the events you use to score a race. An event can represent:
- Legs of a triathlon (for example,
SWIM,BIKE,RUN) - Individual finish chutes in a large road race
- Split points on the course
- Start times, especially for wave starts
- A select event for recording select times
- A lap event for races with multiple laps
Manage events through Misc (Master Menu) → Edit list of events.
Events.xml replaced an older text file named EVENTS. If RunScore cannot find Events.xml, it falls back to EVENTS.
Example structure:
<events>
<event name="5K" distance_type="meters"></event>
</events>
The Event command in listing files references names from this file.
Entries.ini
Beyond the race name, date, and behavior settings described in RunScore Basics, Entries.ini can:
- Define custom variables referenced from RSM and listing files
- Update designated fields automatically each time a participant record is saved
- Set background and font colors for the Enter/Edit Names and Results screens
See the Entries.ini reference for full details.
*.FN2 and *.TM4
RunScore generates these when Events.xml is parsed. An event named SWIM produces SWIM.FN2 and SWIM.TM4.
*.FN2 — two-byte integers for finishing order. These are not bib numbers; they are zero-indexed pointers into ENTRIES.DTA.
*.TM4 — finish times in order, stored as four-byte integers in hundredths of a second (54.32 seconds → 5432).
When a listing uses the Event command, RunScore reads order from *.FN2 and times from *.TM4.
Listing files (.lst, .rsm, LSM)
The three listing file types — simple listings, RSM macros, and LSM parameter listings (@…lst) — are described in Introduction. Examples of RSM and LSM working together are in Parameter Parsing Listing Files.
Listings also write reports, CSV/JSON exports, and online upload files into the race folder via Destination, Export, or External Report To.
How listing commands use these files
When you run a listing file:
FieldandSelectread column names fromENTRIES.FRM/ENTRIES.DTAEventreads finish order and times from*.FN2and*.TM4for the named event inEvents.xml- RSM parameters and
Entries.inivariables supply race-specific values without duplicating logic across files
Keep .lst, .rsm, and @…lst files in the same race folder as the data they reference. Cloning a race copies the full listing setup with the configuration.
Continue to Listing Files for the command syntax used inside .lst and .rsm files.