stránky radioamatérské stanice
OK2PPK » Texty » Programy » Loc | ---
offline program
v1.2 (2013/12), v2.3 (2025/4), konzolová aplikace Win32Api
autor OK2PPK
Program Loc vypočítá vzdálenost a azimut mezi dvěma lokátory. Pracuje ve třech režimech. V prvním se mu zadají dva lokátory (v rozmezí AA00AA až RR99XX, může být použito malé i velké písmo) a program vypíše jejich souřadnice, azimuty mezi oběma lokátory, jejich vzdálenost, vzdálenost zaokrouhlenou dle doporučení (IARU-R1 VHF Handbook 10.02, bod 9.11.1) pro vyhodnocování VKV závodů a azimuty zaokoruhlené na celá čísla.
Do druhého režimu se program přepne použitím příkazu silent a opět zadáním dvou lokátoru. Program provádí vnitřně stejný výpočet jako v prvním režimu, ale vypíše pouze vzdálenost zaokrouhlenou dle doporučení pro vyhodnocování VKV závodů. V případě chyby program vypíše pouze nulu.
Ve třetím režimu se programu zadá výchozí lokátor, jméno souboru se vstupními daty a jméno souboru, do kterého se má uložit výsledek. Program čte lokátory ze vstupního souboru, provádí výpočet vzdálenosti a azimutu proti výchozímu lokátoru, a výsledky zapisuje do souboru. Vstupní soubor musí být textový, na každém jeho řádku musí být přesně a pouze jeden lokátor, pro který se má výpočet provést. Celkový počet řádků - tj. najednou zpracovatelných lokátorů - není omezen, ale při větším rozsahu dat může zpracování trvat dlouho - program má sice zabudované vyrovnávací paměti pro zrychlení práce se soubory, ale vlastní výpočty byly optimalizovány na přesnost na úkor rychlosti. Výstupní soubor je opět textový, každý řádek obsahuje výsledky výpočtu pro jeden lokátor načtený ze vstupního souboru, lokátory jsou ve stejném pořadí jako byly ve vstupním souboru, jeden výstupní řádek je ve tvaru výchozí lokátor, středník, lokátor načtený ze souboru, středník, zaokrouhlená vzdálenost, středník, zaokrouhlený azimut z výchozího do načteného lokátoru.
Pro výpočty ortodromy jsou použity běžné funkce ze standardní matematické knihovny pro C a čísla s plovoucí řádovou čárkou s přesností "double". Protože se pracuje s goniometrickými a cyklometrickými funkcemi, může to způsobit odchylky vypočítaných a očekávaných výsledků - v blízkosti limitních hodnot dochází, díky zaokrouhlování způsobenému konečným počtem číslic, ke vzniku chyb - např. azimut lokátorů na stejné rovnoběžce nebo na stejném poledníku by měl být celistvým násobkem 90°, ale výpočtem vychází odchylka od očekávaného údaje běžně i na druhém desetinném místě. Podobně výpočty vzdáleností a azimutů v oblasti zemských pólů, kde je rozměr lokátorů ve směru rovnoběžky velmi malý, mohou být zatíženy značnou chybou. Proto byl pro výpočet použit tzv. Vincentyho algoritmus, který je optimalizovaný pro numerické výpočty na strojích s omezenou přesností čísel. V oblasti střední Evropy, kde má nejmenší čtverec - ve VKV závodech používaném systému lokátorů - rozměr cca 5x6km, toto nemá velký význam, a uvádím to spíše pro ty, koho by zajímal důvod, proč nejsou výpočty zcela přesné.
Vzdálenost je zaokrouhlena dle doporučení pro vyhodnocování VKV závodů, tj. oříznutím na celé číslo a přičtením jedničky, pro výpočet je dle doporučení použita převodní konstanta 111,2km/stupeň (tj. poloměr Země 6371,3km). Pro spojení ve vlastním lokátoru se vzdálenost zaokrouhluje na 1km a azimut ztrácí smysl. Souřadnice lokátorů se počítají v jejich středech.
LOC loc1 loc2 ... vypočítá vzdálenost, azimut a souřadnice LOC silent loc1 loc2 ... vypočítá zaokrouhlenou vzdálenost LOC loc1 soubor1 soubor2 ... vypočítá vzdálenost a azimut loc1 proti loc načteným ze souboru1 a výsledek uloží do souboru2 silent - je vypsána pouze zaokrouhlená vzdálenost nebo nula při chybě loc1 - výchozí lokátor (AA00AA až RR99XX) loc2 - protější lokátor (AA00AA až RR99XX) v lokátorech mohou být kombinovány znaky velké i malé abecedy soubor1 - vstupní soubor soubor2 - výstupní soubor Příklad použití: loc jn89gf jn88jx
V roce 2022 jsem především kvůli deníkům z Moon contestu potřeboval doplnit funkcionality v programu LOC a současně i v jednom pomocném programu na export dat z EDI souborů. Používal jsem pod DosBoxem log Atalanta Locator v12.29, který sice uměl zapsat log z Moon contestu, ale počítal chybně body. Data jsem pak musel za pomoci programu LOC přepočítat, což znamenalo nenulové množství ruční práce navíc, nebo při méně spojeních jsem log zapisoval přímo ručně v textovém editoru a body dopočítal pomocí LOC. Program jsem musel kvůli přechodu na jiné vývojové prostředí stejně přepsat, a tak nakonec obdobně jako u programu Prekod jsem ho napsal úplně celý znovu a podstatně jsem rozšířil jeho možnosti. Současně jsem do něj integroval i exportní funkce ze souborů EDI, abych nemusel při zpracování logů používat ještě pomocný exportní program, kterých bych jinak stejně musel ještě upravit. Vznikla tedy nová verze LOC v2.0, která byla sice kompletně funkční a poprvé jsem ji použil na přepočítání logu z Moon contestu z 3.8.2022, ale při dalších testech jsem v ní našel chybu v načítání poznámek ze souborů EDI, která mi předtím unikla, takže po ještě nějakých dalších drobných úpravách je první finální verze LOC v2.1.
Program LOC ve verzi 2.1 byl doplněn o schopnost pracovat kromě s 6 znakovými lokátory i se 4 znakovými, 8 znakovými a 10 znakovými a u 10 znakových s oběma variantami, tj. jak s uspořádáním čtverců 24x24 tak i 25x25. Navíc umí pracovat i se starým systémem QRA čtverců.
Kromě původních režimů s jednorázovým výpočtem a s výpočtem nad více daty načtenými ze souboru byl přidán interaktivní režim, kdy je možné při jednom spuštění zadávat postupně další vstupní data na základě výzvy programu. Tento režim je možný jen u převodů mezi souřadnicemi a lokátory a v módu výpočtu vzdáleností a azimutů.
K původnímu módu výpočtu vzdálenosti (nyní mód dist) byly přidány další. V módu gcs2loc se převádí zadané zeměpisné souřadnice na lokátor. V módu loc2gcs se pro zadaný lokátor určí souřadnice rohů i středu a pro ně se spočítají odpovídající lokátory. V módu recount je možné nechat přepočítat body v souboru EDI jak podle kilometrů, tak podle pásem velkých čtverců. Módy expstd, expmoon a exploc umožňují vyexportovat některé údaje ze souboru EDI do textového souboru do jiného tvaru.
Oproti LOC v1.2 byly rozšířeny možnosti výpočtu vzdáleností a azimutů. Je možné použít jak algoritmus z LOC v1.2, tak i starší, který jsem používal v DOSovské verzi V1.0. Byly rozšířeny možnosti volby zaokrouhlování vzdáleností i azimutů.
V módu dist byla přidána možnost načítat lokátory i ze souboru EDI a přímo se soubory EDI lze pracovat i v módu loc2gcs. Podrobnější informace k použití programu najdete v plném textu nápovědy. Upozorňuji, že plná nápověda je dost dlouhá a při výpisu na konzoli se nemusí do ní celá vejít. Buď si ji pak musíte přesměrovat do souboru, nebo použít volbu helpfile pro uložení do souboru nebo si celý text stáhnout z odkazu níže.
V době, kdy sem novou verzi programu LOC dávám (srpen 2022), je to hodně horká novinka, která neprošla dlouhodobým používáním. Sice jsem při jejím vývoji dělal velké množství testů, ale byl to jen omezený soubor dat. Nevylučuji tedy, že v programu mohou být chyby, o kterých zatím nevím. Doporučuji tedy program používat opatrně a především s ním nikdy nepracovat přímo na originálech dat, ale na kopiích a nejlépe v samostatném adresáři, kde nebude hrozit, že si něco přepíšete nebo smažete.
V prosinci 2024 jsem po více jak ročním bezproblémovém používání programu ve verzi 2.1 přešel na novou verzi 2.2, do které jsem přidal možnost přepočtu bodů podle podmínek závodu CQ Budapest a související nový typ exportu logu i se sloupcem druhu provozu do textového souboru.
V průběhu ledna až dubna 2025 jsem provedl další úpravu programu na verzi 2.3. Poprvé jsem ji po rozsáhlých úpravách a testech výpočetní části použil na přepočítání logu z Moon Contestu 12.2.2025. Nejpodstatnější změnou bylo přepsání všech výpočtů v programu tak, že je bylo možné nyní provádět s čísly v plovoucí řádové čárce s volitelnou přesností kromě výchozích 64bit i 80bit, 128bit a 32bit. Byla přidána možnost přepínat mezi dvěma postupy převodů mezi lokátory a souřadnicemi a v souvislosti s přepínáním přesnosti čísel byly nově pro výpočty vzdáleností použity souřadnice nekorigované o malý posun prováděný kvůli převodům z lokátoru na lokátor, tak jako tomu bylo u předchozích verzí programu. Zůstala zachována možnost na starší postup přepnout volbou gcsalg1old.
Do programu byl přidán třetí algoritmus výpočtu vzdáleností kmalg3, který provádí výpočet iteračním postupem na povrchu elipsoidu WGS84. Byly přidány volby pro zaokrouhlení vzdáleností na centimetry a stupňů na milistupně. V režimu recount bylo přidáno provádění kontroly EDI souborů na některé chyby v odeslaných číslech spojení, časech spojení a reportech a v souvislosti s tím byly rozšířeny a upraveny informace zapisované během přepočtu do logu. Byl přidán nový režim mrecount umožňující provést více přepočtů souborů EDI najednou podle předloženého seznamu a generující sumární přehled ze všech provedených přepočtů do jednoho výstupního souboru.
V režimu loc2gcs jsou nyní vypisovány rozměry lokátoru i v kilometrech. V režimu dist je nyní možné v interaktivním režimu změnit vlastní lokátor bez nutnosti znovu spustit program a z textového souboru lze načítat pro výpočet i dvojice lokátorů. V režimu recount byl výchozí formát tabulky s výsledky přepočtu spojení změněn ze sloupců oddělených středníky na sloupce zarovnané na stejné pozice mezerami a na formát se středníky lze přepnout volbou tblsemicol. Lokátory lze nyní zadávat i ve zkrácené 2 znakové podobě a obdobně i čtverce ve starém systému QRA lze zadat i 4 znakově nebo 2 znakově (tyto zkrácené tvary se ale musí při zadávání doplnit zprava hvězdičkami u lokátorů na 4 znaky a u QRA čtverců na 5 znaků).
Do módu recount byly přidány volby onlyloc6 a onlyloc46 umožňující omezit rozpoznávané tvary lokátorů jen na šestiznakové a čtyřznakové. Do módů recount a loc2gcs byly přidány volby toloc6 a toqra, které umožňují při přepočtu deníků změnit tvar lokátorů na šestiznakové nebo na QRA čtverce včetně jejich uložení v tomto tvaru do výstupního EDI souboru, a v módu převodu lokátorů umožňují omezit výstupní data jen na tvary lokátorů převedené na šestiznakové lokátory nebo na QRA čtverce. Interaktivní režimy v módech gcs2loc, loc2gcs a dist byly doplněny o nápovědu a o další příkazy umožňující např. přeskočit opakované zadání stejného parametru nebo změnit výstupní tvar dat, atd. V módu gcs2loc bylo nově umožněno zadávat souřadnice i formou kladných nebo záporných čísel bez písmen N, S, E nebo W na konci. V závěru úprav jsem ještě přidal možnost používat u voleb gcs2loc, locgcs, dist, recount, expstd a ptsmulownloc zkrácené jednopísmenné tvary g, l, d, r, e a p a do balíku ZIP s programem jsem přidal soubory s příklady použití.
V průběhu úprav programu na verzi 2.3 a během jejího zkoušení jsem narazil i na některé chyby pocházející z předchozích verzí programu a zpětně je ve verzích 2.1 a 2.2 také opravil. Během testování verze 2.3 jsem zkoušel přepočítávat více jak 250 souborů EDI obsahujících přes 27 tisíc spojení a porovnával výsledky s výstupy ze starší verze programu a s původními údaji v souborech a nenarazil jsem na nějaké zjevné chyby, které by v2.3 produkovala, nicméně vzhledem k tomu, že změny v programu byly oproti verzi 2.2 velmi rozsáhlé, tak nevylučuji, že se nějaká zapomenutá chyba časem neprojeví.
Následně uvedená syntaxe se týká pouze aktuální verze programu 2.3 a je ve zkráceném znění. Plnou verzi popisu nebo popis od starší verze programu si můžete stáhnout na odkazech níže nebo si ho můžete nechat vygenerovat přímo programem zadáním příkazu helpfile. Pro verzi 2.3 jsou pak do balíku zip přiloženy i příklady použití s ukázkami vstupních a výstupních souborů.
LOC LOC ?|h|hlp|help LOC helpfile LOC v|version LOC g|gcs2loc [options1] LOC g|gcs2loc [options1] latitude longitude LOC g|gcs2loc [options1] filein.txt [fileout.txt] LOC l|loc2gcs [options2] LOC l|loc2gcs [options2] loc LOC l|loc2gcs [options2] filein.txt [fileout.txt] LOC l|loc2gcs [options2] filein.edi [fileout.txt] LOC d|dist [options3] [loc1] LOC d|dist [options3] loc1 loc2 LOC d|dist [options3] [loc1] filein.txt [fileout.txt] LOC d|dist [options3] [loc1] filein.edi [fileout.txt] LOC r|recount [options4] filein.edi [fileout.edi] LOC mrecount [options4] filein.txt [fileout.txt] LOC e|expstd filein.edi [fileout.txt] LOC expmoon [options5] filein.edi [fileout.txt] LOC expcqbp [oth description] filein.edi [fileout.txt] LOC exploc filein.edi [fileout.txt] Options1: gcsalg1old|gcsalg1|gcsalg2 precs32|precs64|precs80|precs128 usecomma Options2: gcsalg1old|gcsalg1|gcsalg2 kmalg1|kmalg2|kmalg3 precs32|precs64|precs80|precs128 usecomma toloc6|toqra Options3: gcsalg1old|gcsalg1|gcsalg2 kmalg1|kmalg2|kmalg3 precs32|precs64|precs80|precs128 noroundkm|roundkm|rounddkm|roundm|roundcm|roundiaru|roundoth norounddeg|rounddeg|roundddeg|roundmdeg myloc10y loc10y oldfrm dbgiter usecomma Options4: ptskm|ptsloc|ptsmulloc|p|ptsmulownloc|ptscqbp gcsalg1old|gcsalg1|gcsalg2 kmalg1|kmalg2|kmalg3 precs32|precs64|precs80|precs128 roundkm|roundiaru|roundoth myloc10y loc10y nochkrst nochknr dbgiter usecomma tblsemicol|tblboth noaddmm onlyloc6|onlyloc46 toloc6|toqra Options5: colindept oth description Default options: ptskm gcsalg2 kmalg2 precs64 roundiaru rounddeg Formát dat: latitude: 0-90deg (decimal, xx.xxxxxxxxxx[N]|S, -xx.xxxxxxxxxx) longitude: 0-180deg (decimal, xxx.xxxxxxxxx[E]|W, -xxx.xxxxxxxxx) loc: RR**, RR99, RR99XX, RR99XX99, RR99XX99XX, RR99XX99YY*, ZZNNj (QRA), ZZNN*, ZZ*** Zadávání voleb a parametrů: Před jednopísmennými jmény voleb lze uvést znak pomlčka nebo lomítko a před víceznakovými jmény voleb lze kromě pomlčky a lomítka použít i dvě pomlčky. Pokud je potřeba zadat parametr, který se shoduje s některým jménem volby, ale nemá být jako volba vyhodnocován, tak se na jeho začátek umístí znak rovnítko. Popis hlavních voleb: bez parametru ... vypsat krátkou nápovědu ?|-?|h|-h|help ... vypsat nápovědu helpfile ... nápovědu uložit do textového souboru "loc21.txt" v|version ... vypsat informaci o versi a sestavení programu g|gcs2loc ... převod souřadnic na lokátor l|loc2gcs ... převod lokátoru na souřadnice nebo jiný tvar lokátoru d|dist ... výpočet vzdálenosti mezi lokátory r|recount ... přepočet bodů v souboru EDI mrecount ... přepočet bodů více souborů EDI najednou e|expstd ... export standardních údajů o spojení ze souboru EDI expmoon ... export údajů o spojení z Moon contestu ze souboru EDI expcqbp ... export údajů o spojení z CQ Budapest contestu ze souboru EDI exploc ... export lokátorů ze souboru EDI Popis ostatních voleb: ptskm ... 1bod = 1km ptsloc ... body dle sousedních pásem velkých lokátoru, bez násobiče ptsmulloc ... jako ptsloc, násobič je počet velkých lokátorů p|ptsmulownloc . jako ptsmulloc, násobič je i vlastní čtverec (dle PA VKV) ptscqbp ... body dle CQ Budapest (1km = 1bod, vlastní loc = 5bodů, násobiče SSB = x2, CW = 3x, 70cm = x2, 23cm = x3, MW = x4) gcsalg1old ... totéž jako gcsalg1 + korekce shodné s verzí Loc 2.1 a 2.2 gcsalg1 ... převod lokátor - souřadnice pomocí reálnych čísel gcsalg2 ... převod lokátor - souřadnice pomocí celých čísel kmalg1 ... standardní výpočet vzdálenosti na kouli (111.2km/deg) kmalg2 ... přesnější výpočet vzdálenosti na kouli (111.2km/deg) kmalg3 ... iterační výpočet vzdálenosti na elipsoidu WGS84 precs32 ... přesnost reálných čísel při výpočtu 32bit precs64 ... přesnost reálných čísel při výpočtu 64bit precs80 ... přesnost reálných čísel při výpočtu 80bit precs128 ... přesnost reálných čísel při výpočtu 128bit noroundkm ... vzdálenost nezaokrouhlovat roundkm ... zaokrouhlit na kilometry (na sudo) rounddkm ... zaokrouhlit na desetiny kilometru (na sudo) roundm ... zaokrouhlit na metry (na sudo) roundcm ... zaokrouhlit na centimetry (na sudo) roundiaru ... zaokrouhlit dle IARU pro výpočet bodů z VHF závodů roundoth ... zaokrouhlit jiným postupem norounddeg ... nezaokrouhlovat azimut rounddeg ... zaokrouhlit azimut na stupně (na sudo) roundddeg ... zaokrouhlit azimut na desetiny stupně (na sudo) roundmdeg ... zaokrouhlit azimut na milistupně (na sudo) myloc10y ... vlastní lokátor je ve tvaru RR99XX99YY loc10y ... lokátor je ve tvaru RR99XX99YY oldfrm ... data vypsat ve formátu jako LOC v1.2 nochkrst ... nekontrolovat TXRST, RXRST a souhlas s MODECODE nochknr ... nekontrolovat TXNR a RXNR dbgiter ... u kmalg3 vypisovat ladící informace o iteraci usecomma ... použít desetinnou čárku místo tečky ve výstupech tblsemicol ... tabulky s oddělením sloupců středníky tblboth ... tabulky s oddělením sloupců středníky i zarovnáním mezerami colindept ... všechny sloupce ve výstupu samostatně oddělit středníkem noaddmm ... při výpočtu nedoplňovat 4-místny lokátor o MM onlyloc6 ... povolit pouze 6-místne lokátory onlyloc46 ... povolit pouze 4-místne a 6-místne lokátory toloc6 ... vlastní i přijaté lokátory převést na 6-místne lokátory toqra ... vlastní i přijaté lokátory převést na QRA čtverce oth description ... u modecode=0 místo textu OTH použít text z description Popis parametrů: latitude ... zeměpisná šírka longitude ... zeměpisná délka loc ... lokátor nebo QRA čtverec loc1 ... vlastní lokátor nebo QRA čtverec loc2 ... lokátor nebo QRA čtverec protistanice filein.txt ... jméno vstupního textového souboru filein.edi ... jméno vstupního souboru pro načtení dat ve formátu EDI fileout.txt ... jméno výstupního textového souboru fileout.edi ... jméno výstupního souboru pro uložení dat ve formátu EDI Režimy práce: interaktivní režim ... jen v módech gcs2loc, loc2gcs a dist jednorázový režim ... jen v módech gcs2loc, loc2gcs a dist režim zpracování souboru ... ve všech módech Příklady použití: Program je konzolová Win32 aplikace, nejde ho spustit pod DOSem. Příklady předpokládají, že program byl přejmenován na loc.exe a buď je uložený v pracovní adresáři se zpracovávanými soubory nebo je k němu nastavena cesta v proměnné prostředí PATH. loc ? loc /? loc -? loc hlp loc helpfile loc v loc version loc --version loc gcs2loc loc g loc gcs2loc 49.232108N 16.690335E loc gcs2loc 5s 6w loc gcs2loc vstup.txt loc loc2gcs loc l loc loc2gcs IJ65b loc loc2gcs JN89 loc loc2gcs JN89BB loc loc2gcs gcsalg1 JN89BB loc loc2gcs JN89BB03 loc loc2gcs JN89BB03UH loc loc2gcs JN89BB03UH* loc loc2gcs vstup.txt loc dist loc -dist loc d loc dist noroundkm norounddeg loc dist -noroundkm -norounddeg loc dist oldfrm loc dist JN89FH loc dist oldfrm JN89FH loc dist kmalg1 rounddkm roundddeg JN89FH JO60DE loc --dist roundm roundddeg JN89FH JO60DE loc --dist -roundm --roundddeg JN89FH JO60DE loc -dist --roundm -roundddeg JN89FH JO60DE loc /dist /roundm /roundddeg JN89FH JO60DE loc dist JN89FH22 IJ65c loc dist -oldfrm JN89FH22 IJ65c loc dist JN89FH vstup.txt loc dist vstup.txt loc dist vstup.edi loc dist oldfrm vstup.edi loc dist JO70KA vstup.edi loc dist vstup.edi vystup.txt loc dist =roundoth loc dist gcsalg1 vstup.edi loc dist precs32 vstup.edi loc dist kmalg3 dbgiter precs128 usecomma vstup.edi loc recount vstup.edi loc r vstup.edi loc recount vstup.edi vystup.edi loc recount roundoth vstup.edi loc recount ptsmulloc vstup.edi loc recount ptsmulownloc vstup.edi loc recount p vstup.edi loc recount ptscqbp vstup.edi loc recount nochkrst nochknr vstup.edi loc recount tblsemicol vstup.edi loc recount tblboth vstup.edi loc mrecount seznam.txt loc mrecount kmalg1 gcsalg1old seznam.txt loc expstd vstup.edi loc e vstup.edi loc expstd vstup.edi vystup1.txt loc expmoon vstup.edi loc expmoon oth C4FM vstup.edi loc expmoon colindept oth C4FM vstup.edi loc expmoon -oth C4FM vstup.edi loc expmoon /oth C4FM vstup.edi loc expcqbp vstup.edi loc exploc vstup.edi
loc12.exe - program v1.2 (52kB), loc12.txt - popis v1.2 (2kB), loc12.zip - program+popis+příklad v1.2 (27kB)
loc21.exe - program v2.1.3 (117kB), loc21.txt - popis v2.1.3 (28kB), loc21.zip - program+popis v2.1.3 (61kB)
loc22.exe - program v2.2.2 (121kB), loc22.txt - popis v2.2.2 (31kB), loc22.zip - program+popis v2.2.2 (63kB)
loc23.exe - program v2.3 (455kB), loc23.txt - popis v2.3 (71kB), loc23.zip - program+popis+příklady v2.3 (294kB)
b0470160df1156af89f5aa3b1508b96cde2712e3 loc12.exe 5ed04cd9d711563d272419d2b49167f229a3985c loc12.zip 81571574e3cb22f6e5557d228f9990b901d65b9d loc21.exe 9c4cb4ca53381ab1d56846060c895e08be1e4f07 loc21.zip 2552056f217d9fca8495a7719b23036968dee811 loc22.exe 7b27f91629301a656e30d1f6a55baea516be0ee7 loc22.zip ac701b6fd869db068867e583c1dd37109426f214 loc23.exe 69a240b4f013cd77d72335c3579b69f17534efbf loc23.zip
v1.0 2004/9 - verze pro DOS
v1.1 2013/12 - první verze pro WIN, konzolová aplikace pro Win32 API, oproti původní verzi pro DOS nakonec použit jiný algoritmus výpočtu - tzv. Vincentyho, změněn způsob výpočtu souřadnic z původně optimalizovaného na rychlost na jiný optimalizovaný na co nejmenší ztrátu přesnosti v důsledku zaohrouhlování.
v1.2 2013/12 - ve výpočtech změněny zbylé konstanty typu integer na double a některé výpočty s více konstantami, které byly kvůli testům zatím podrobně rozepsány, byly optimalizovány sloučením konstant dohromady.
v2.0 2022/8 - přechod na kompilaci pomocí MinGW32, program od základu přepsán, přidána možnost pracovat s lokátory s 8 znaky, s 10 znaky (obě varianty 24x24 i 25x25 čtverců) i s původními čtverci QRA. Přidán převod ze souřadnic na lokátor a z lokátoru na souřadnice rohů a jejich lokátory. Výpočet vzdálenosti rozšířen o volbu dvou postupů výpočtu a více možností zaokrouhlování a o schopnost přímo pracovat s lokátory v souboru EDI. Přidána možnost přepočítat soubor EDI jak podle vzdáleností, tak i podle pásem velkých čtverců a výsledky uložit přímo do souboru EDI. Přidána možnost exportovat data ze soubor EDI do jiného tvaru v textovém souboru a možnost vyexportovat ze souboru EDI jen seznam lokátorů. U převodů souřadnic a lokátorů a u výpočtu vzdálenosti byl přidán interaktivní režim.
v2.1 2022/8 - opravena chyba v načítání řádků ze sekce [Remarks] souboru EDI, do výstupních souborů přidána varování na případné nesrovnalosti zjištěné při načítání dat ze souborů EDI. 29.8.2022 aktualizováno na v2.1.1 (označení pro web zůstalo v2.1) - lépe ošetřeny souřadnice 180E, 90S a 90N. 5.2.2025 aktualizováno na v2.1.2 (opravena chyba, kdy v módu recount byl místo parametru loc10y používán i pro přijaté lokátory parametr myloc10y). 9.4.2025 aktualizováno na v2.1.3 (opravena chyba v rutině detekce lokátorů).
v2.2 2024/12 - v módu recount doplněn parametr ptscqbp umožňující provést přepočet bodů dle podmínek CQ Budapest VHF/UHF/SHF activity contestu (vlastní loc za 5 bodů, násobení počtu bodů za spojení u SSB a cross mode CW/SSB a SSB/CW 2x, u CW 3x, násobení počtu bodů za spojení na pásmu 70cm 2x, na 23cm 3x a na vyšších pásmech 4x). Přidán mód expcqbp, ve kterém se narozdíl od módu expstd do textových souborů exportuje i sloupec s druhem provozu. 5.2.2025 aktualizováno na v2.2.1 (opravena chyba, kdy v módu recount byl místo parametru loc10y používán i pro přijaté lokátory parametr myloc10y). 9.4.2025 aktualizováno na v2.2.2 (opravena chyba v rutině detekce lokátorů).
v2.3 2025/4 - přidána možnost přepínat přesnost výpočtu 32/64/80/128bit, přidáno přepínání algoritmů převodu mezi lokátory a souřadnicemi včetně změny práce s korekcemi souřadnic tak, aby nebyly korekce použity i při výpočtu vzdálenosti, přidán iterační výpočet vzdálenosti na elipsoidu, přidán režim pro přepočet více EDI souborů najednou, přidáno kontrolování některých chyb při přepočtu a byl změněn a rozšířen log s výsledky přepočtu, přidán sumární log při vícenásobném přepočtu.