Po zásahu do GLOBAL RETAIN a následném opakovaném překladu programu dojde k posunu adres proměnných RETAIN bez "synchronizace hodnot"
Po online změně programu jsou pak u proměnných původních hodnoty registru, které nedávají smyal nebo nuly.
Chtěl jsem to řešit uložením a načtením RETAIN paměti. V knihovně SysLib jsou na to funkční bloky, ale pro novější jednotky.
Je řešení pro Foxtroty v.1 ?
Nebo je možnost iniciace nastavených hodnot jen některých REATAIN proměnných "dávkou" .
Ručně je to v případě delších polí oříšek.
Odpovědi 1
Teplý restart programu znamená pouze to, že se neinicializují hodnoty zálohovaných proměnných. V případě Foxtrotů CP-10xx to znamená, že se nezmění hodnoty proměnných v zálohované zóně na začátku paměti. Pokud se nové proměnné přidají "doprostřed" zálohované zóny, tak to samozřejmě vede k tomu, že se hodnoty následujících proměnných ztratí a pomíchají. Tuto situaci řeší pouze režim on-line změny, samotný teplý restart žádnou synchronizaci nezajišťuje.
Uložit a nahrát v libovolný okamžik hodnoty vybraných proměnných umožňuje nadefinování katalogu proměnných přes direktivu {OPEN_UP} a volání funkcí z příkladu v příloze. Nebyly vydány jako knihovna, ale řešit uživatelské ozálohování vybraných proměnných tím šlo.
Vaše odpověď
Pro vložení odpovědi je nezbytné být přihlášený. Pokračujte na přihlášení.