If you have a course set in PurplePen using a geo-referenced map as the background map, PurplePen will have geo-coordinates for each control site.
In this case, you export a GPX file from PurplePen and then you can use a utility from Daniel Widman: https://tools.widmann.ca/ to convert the control locations into a KML file.
Alternatively you can export an IOF XML v2.0.3 file and use a function at o.utils: "Convert Georeferenced IOF XML Course File to KML Course Files (in a Zip file)".
If you have set a course in PurplePen and the background map is not geo-referenced, for example a PDF version of the map, then PurplePen won't have coordinates for each control.
If this is your situation, and you also have a KMZ version of the map, export your course(s) as IOF XML v2.0.3. This file will just contain x and y positions on the map page for each control, but combined with the geo-location information in the KMZ file, you will be able to determine the geo-location of each control.
To do this there is another function at o.utils: "Convert Un-Georeferenced IOF XML Course File to KML Course Files (in a Zip file) using a matching KMZ file to provide the geo-referencing".
Converting courses set in Orienteering Course setting software (eg PurplePen or OCAD) to KML format allows the file to be opened in Google Earth to see precisely where the controls are positioned on a "real-world" satellite image ... and this allows adjustments to be made.
This may work but depends on how you have numbered your start, finish and other controls. MapRunF relies on a start called S1 and a finish called F1. Sometimes purple pen exports the controls as 1 (31), 2 (32) etc which MapRunF also doesn't like.
Daniel's utility mentioned above cleans all this up and produces KML which is exactly what MapRunF is expecting.