Ready/Run

Takie sobie archiwum listingów ze starych magazynów komputerowych


XIO Demo
  • Język programu: Basic
  • Platforma: Atari XE/XL
  • Kod zamieszczono w Bajtek 3/1988
  • Autor listingu: Wojciech Zientara
  • Listing nadesłał: Amarok

Stan listingu:

4
Listing gotowy - uruchamia się na emulatorze lub realnej maszynie zgodny z listingiem zamieszczonym w periodyku

Dołączona do komputera instrukcja Atari Basic wspomina o instrukcji XIO zaledwie tyle, że jest używana przy operacjach dyskowych i w grafice. Z tak lakonicznej informacji trudno cokolwiek zrozumieć, przybliżę więc Czytelnikom znaczenie tej ciekawej i pożytecznej instrukcji.

Dwie operacje XIO mogą być wykonywane wyłącznie na ekranie: rysowanie linii (XIO 17 = DRAWTO) i wypełnianie obszaru (XIO 18). Pierwszej z nich odpowiada instrukcja Basica DRAWTO i nie będzie ona nas interesować. Druga, nie mająca odpowiednika w Basicu, udostępnia dodatkową interesującą funkcję graficzną. Ponieważ jest to najczęściej stosowana instrukcja XIO, to jej format podam osobno:

XIO 18,#6,0,0,”S:”

Użycie jej nie jest proste, więc zademonstrowane zostanie na przykładzie. Najpierw należy narysować linię ograniczającą z prawej strony wypełniany obszar i umieścić kursor instrukcją PLOT lub DRAWTO w miejscu, z którego rozpoczniemy wypełnianie (linie 90 i 100). Następnie do rejestru FiLDAT (765) wpisujemy numer koloru, który ma zostać użyty do wypełniania i umieszczamy kursor instrukcją POSITION w miejscu zakończenia wypełniania (linia 110). Dopiero teraz można wywołać instrukcję XIO 18 (linia 120). W liniach 20—80 ustalany jest kolor i losowo wybierane jest miejsce rysowania. Cała procedura jest powtarzana po naciśnięciu klawisza START.

Należy pamiętać, że XIO 18 wypełnia każdą linię obrazu, aż do napotkania punktu o kolorze różnym od koloru tła.

Nie można więc wypełniać obszarów wypełnionych już wcześniej.

Jak zaladować (najprostsza metoda)

ALTIRRA: 

  • Włączyć SYSTEM->INTERNAL BASIC (Basic Without OPTION Key)
  • Cold Reset (Powinien wejść do Basica)
  • LOAD "D:XIO.BAS"
  • RUN