6 STRONASCRAP LOADERPrzedstawiony program pozwala odzyskiwać uszkodzone programy lub ich fragmenty z plików zapisanych na taśmie rozkazem CSAVE. Zdarza się bowiem nieraz, że plik taki ulegnie "podkasowaniu" w pobliżu końca (np. wskutek pomyłki w ustawieniu licznika) i choć większość programu jest na kasecie, nie da się w zwykły sposób odczytać. Po przepisaniu poniższego programu należy go nagrać na taśmę, ponieważ podczas wykonywania swojego zadania "odzyskiwacz" zostanie skasowany. Uruchomiony program prosi pojedynczym sygnałem o wczytanie wadliwego programu. Po dojściu do uszkodzenia lub końca komputer przez kilka sekund wydaje dźwięki wyrażające jego niezadowolenie, po czym wyświetla listing odzyskanego programu. Pojawiający się przy tym komunikat o błędzie nr 15 może martwić już tylko malkontentów. Kilka słów o sposobie działania: Uszkodzony program, traktowany jako ciąg bajtów, zostaje wczytany przez kanał # 1 pod typowy dla Basicu adres 1792 + 256. Następnie "odzyskiwacz" odczytuje z nagłówka programu adres tablicy zmiennych, odnajduje rozmiar pierwszego wiersza i dalej, odliczając długości kolejnych wierszy, poszukuje końca programu. Ostatni, uszkodzony wiersz zostanie zastąpiony przez rozkaz LIST w trybie bezpośrednim, po czym do stosownych komórek na stronie zerowej wpisywane są wektory odzyskanego programu, a na zakończenie wyświetla się pełny jego listing. Marek Omirski
Od redakcji: Program ten jest dostosowany do standardowej konfiguracji ATARI z magnetofonem. Nie będzie więc działał poprawnie w obecności DOS-ów, COS-ów, systemów TURBO, itd.
PIŁKAKolejny już w TA program Rafała Mantiuka ze Szczecina imituje lot piłki odbijającej się o brzegi ekranu i o paletkę, którą możemy poruszać za pomocą joysticka. Program wykorzystuje przerwanie VBLANK i działa niezależnie od sterującego programu w Basicu, umożliwia więc stworzenie w prosty sposób własnej gry typu "Arkanoid".
Uaktywnienie programu następuje po wykonaniu X=USR(1536) a wyłącza się go klawiszem RESET. Piłkę uruchamia się rozkazem POKE 204,1 zaś wyłącza przez POKE 204,0 Wartość 0 w komórce 203 oznacza kolizję piłki z dolną ścianą. Komórki 207 i 208 zawierają prędkość piłki odpowiednio w poziomie i w pionie (dla ruchu w lewo i w górę wpisuje się 256-prędkość). W płonie nie należy przekraczać prędkości 3, a w poziomie 7. Autor dołącza krótki przykład zastosowania powyższego programu, na którym łatwiej będzie prześledzić jego możliwości. Oczywiście przed uruchomieniem tego przykładu trzeba wykonać główny program. Redakcja przeprasza serdecznie za przekręcenie nazwiska autora programu "Basic Tracker" z TA 6/91. Był nim także Rafał Mantiuk.
|