Witam 
Opracowaem nowy program przeznaczony do naprawiania plikw CAS. Poniewa jest to wersja testowa moe dziaa rnie. 
Program jest pewnym dopenieniem wav2cas. Ci, co uywali wiedz, e konwersja plikw wav na cas naraona jest na wiele bdw. Najczciej s to pojedyncze bdy, ktre uniemoliwiaj poprawny odczyt. Im plik duszy tym wiksze prawdopodobiestwo bdnego pliku jako caoci. Wikszo z tych bdw mona atwo naprawi. Mona si domyle, e jak zrobimy sobie np. trzy pliki cas tego samego programu to jest dua szansa, e z tych trzech da si skompletowa jeden poprawny. Rczna robota jest moliwa, ale bardzo mudna. Wic dlaczego nie kaza robi tego automatycznie? No kazaem  

Program uruchamiamy skryptem (moe w przyszoci zrobi gui dla wszystkich programw z rodziny cas): 

cas2cas plik1.cas plik2.cas plik3.cas plik_dobry.cas 

Program przyjmuje te format hex jako wejcie i wyjcie (przyjta zostanie domylna transmisja 600 bodw) 
Czyli np: 

cas2cas plik1.hex plik2.hex plik3.hex plik_dobry.hex 

Oczywicie mona hex z cas miesza. I na przykad podstawi dwa pliki cas i jeden hex lekko przerobiony przez nas, 

Poprawny kod (wedug algorytmu) zostanie zapisany w plik_dobry 

Program mona uy jako np. konwertera hex na cas i odwrotnie. Wystarczy poda jako plik wejciowy trzy razy t sam nazw: 

cas2cas plik.hex plik.hex plik.hex plik_dobry.hex 

Plik wyjciowy zostaje znormalizowany (prdko, przerwy midzy blokami) oraz zostaje poprawiona suma kontrolna (dla standartowych blokw). Mona, wic sobie pogrzeba w pliku cas (jakie zabezpieczenia, niemiertelnoci) a nastpnie wygenerowa plik z poprawnymi sumami kontrolnymi. 

Teraz przedstawi jak program dokonuje korekcji, eby zrozumie jak go najlepiej uywa. Jeli kto ma jakie ciekawe pomysy to bardzo prosz o podzielenie si ze mn. To jest wersja testowa, wic zrobiem to, co wydawao mi si za najprzydatniejsze. Zaleao mi eby program moliwie maksymalnie by automatyczny. 

Program wczytuje plik cas lub hex do pamici w postaci recordw. 
Analiza rozpoczyna si od nadania statusu w postaci liczby kademu rekordowi. 
1- Jeeli rekord ma dugo 132 i ma poprawn sum kontroln 
2- Jeeli rekord ma dugo 132 i suma jest bdna 
4- Jeeli rekord ma inn dugo i ma poprawn sum 
5- Jeeli rekord ma inn dugo i ma nie poprawn sum. 
Nastpnie program skanuje rekordy od pocztku i jeeli trafi na rekord o statusie 5 to moe mu zmieni status na 3 (Rekord, ktry powinien mie dugo 132) gdy znajduje si cho jeden rekord za nim o dugoci 132. Wyapujemy w tym miejscu, ktre bloki s niepene. 
Teraz robimy sortowanie. Wybierany jest blok z trzech dostpnych plikw wedug priorytetu. 
Jeeli chocia jeden z trzech plikw jest 1 to go wybieram. Gdy wszystkie maj 2 analizuj bajt po bajcie wszystkich 3 i wybieram najbardziej moliw wersj, a nastpnie korekcja sumy. Gdy trafiam na rekord o statusie 3 (a nie ma 1 w pozostaych) to szukam brakujcego cigu znakw. Gdy trafiam na rekord 4 to pozostawiam go bez zmian. Gdy trafiam na rekord 5 to ju nic si nie da zrobi. 
Przy wielu bdach "3", porgram moe si powiesi gdy nie moe zaskoczy gdzie jest nastpny blok. Czasami poprawienie na oko, chocia jednego hexa moe poprawi wynik. 

Nastpnie przerwy w pliku wynikowym s normalizowane i poprawiane s sumy kontrolne. Na koniec plik jest zapisany. 

Update:
0.2
- Cas2Cas z opcj -orgsp 
czyli nie zmienia przerw
