Tajemnice ATARI

6 STRONA


FILL


   Program służy do wypełniania dowolnych, zamkniętych obszarów, w dowolnym trybie graficznym ekranu i dowolnym kolorem. Program oparty jest na algorytmie Smitha (wypełnia obszar liniami poziomymi). Wywołanie z poziomu BASIC-a:

X=USR(1536,bufor,x,y,kolor)

  • bufor - adres wolnego obszaru 256 bajtów, w których program będzie odkładał potrzebne mu współrzędne
  • x, y - współrzędne niezamalowanego punktu wewnątrz figury
  • kolor - kolor wypełnienia

       Wykonywanie programu kończy sie, gdy:

  • zostanie wypełniony cały obszar
  • jako punkt początkowy zostanie wskazany punkt już zamalowany
  • kolor rysowania będzie wynosić 0 (sprawdzany jest tylko ten przypadek, jednak należy unikać kolorów, które po wyświetleniu na ekranie przyjmą także kolor tła)
  • naciśnięty zostanie klawisz BREAK
  • komputer dojdzie do któregoś z brzegów ekranu - jest to zabezpieczenie przed przypadkowym "niedomknięciem" figury
  • bufor ulegnie przepełnieniu
  • podane początkowe x, y będą spoza przedziału dozwolonego dla danego trybu graficznego

    10 DIM A$(26):A=1536
    20 TRAP 60:READ A$:I=1:H=0:TRAP 20
    30 N=ASC(A$(I))-48:N=N-39*(N>9):I=I+1
    40 X=16*X+N:H=1-H:IF H THEN 30
    50 POKE A,X:X=0:A=A+1:GOTO 30
    60 END 
    100 DATA 686885cc6885cb688556688555
    110 DATA 6868855468688dfb02d00160a9
    120 DATA 0085cd20caf6208ff1f0016020
    130 DATA caf6208ff1d00dc655a555c9ff
    140 DATA d002c6561890ebe655d002e656
    150 DATA a90085ce85cfc654208ff185d0
    160 DATA e654e654208ff185d1c654a5d0
    170 DATA f006a90085cef01fa5ced01ba9
    180 DATA 0185cea4cda55591cbc8a55691
    190 DATA cbc8c654a55491cbc8e65484cd
    200 DATA a5d1f006a90085cff01fa5cfd0
    210 DATA 1ba90185cfa4cda55591cbc8a5
    220 DATA 5691cbc8e654a55491cbc8c654
    230 DATA 84cd20caf1e655d002e65620ca
    240 DATA f6208ff1d0034c4706a4cd88b1
    250 DATA cb855488b1cb855688b1cb8555
    260 DATA 84cdc0fdf0034c260660
    

    Sławomir Jurałowicz



  • Powrót na start | Powrót do spisu treści | Powrót na stronę główną

    Pixel 2001