Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: QB: Kuvan häivytys esiin

Sivun loppuun

snakari [08.03.2003 00:33:49]

#

Eli ruutu vaihdetaan mustaksi ja sitten siitä tehdään palettia käyttäen värillinen. Ohjelmaa saa käyttää vapaasti

TYPE varit
  r AS INTEGER
  g AS INTEGER
  b AS INTEGER
END TYPE
DIM vari(0 TO 255) AS varit
SCREEN 13
' ympyröitä
RANDOMIZE TIMER
FOR i = 1 TO 500
  CIRCLE (INT(RND * 319), INT(RND * 199)), INT(RND * 10), 16 + INT(RND * 255)
NEXT
COLOR 4: PRINT "toimii!"
' itse ohjelma
FOR lue = 0 TO 255
    ' luetaan väri
    OUT (&H3C7), lue
    vari(lue).r = INP(&H3C9): vari(lue).g = INP(&H3C9): vari(lue).b = INP(&H3C9)
    ' vaihdetaan mustaksi
    OUT (&H3C8), lue
    OUT (&H3C9), 0: OUT (&H3C9), 0: OUT (&H3C9), 0
NEXT
FOR kerta = 0 TO 63
  FOR v = 0 TO 255
    ' luetaan väri
    OUT (&H3C7), v
    r = INP(&H3C9): g = INP(&H3C9): b = INP(&H3C9)
    ' lisätään arvoja
    IF NOT r = vari(v).r THEN r = r + 1
    IF NOT g = vari(v).g THEN g = g + 1
    IF NOT b = vari(v).b THEN b = b + 1
    ' tallennetaan väri
    OUT (&H3C8), v
    OUT (&H3C9), r
    OUT (&H3C9), g
    OUT (&H3C9), b
  NEXT
  ' viive
  a = TIMER
  DO: LOOP UNTIL TIMER - a > .1
NEXT

snakari [08.03.2003 00:36:45]

#

kommentteja..

HtH [08.03.2003 12:52:42]

#

tuollaiset "kommentteja kiitos" kommentit ovat aivan turhia, kyllä ihmiset osaa ilman niitäkin kommentoida koodivinkkejä

thefox [08.03.2003 13:11:39]

#

Ihan OK esimerkki. Ehkä parempi tapa olisi pitää koko paletti taulukossa. Sitten loopissa odottaa vsynciä, ja kirjoittaa koko paletin kerralla. Vsync vähentää tuota "lumisadetta" jota voi esiintyä kun palettiin kirjoitellaan milloin sattuu.

snakari [08.03.2003 20:23:51]

#

hmm.. sillai olisi tosiaan voinut tehdä..

Sami [08.03.2003 21:47:22]

#

Hyvä, kunhan vielä itse tajuaisin tuon... :)

KemXy [10.03.2003 16:54:04]

#

Onnistuisko tuo sama assembyllä Out komennolla?

thefox [10.03.2003 19:57:39]

#

KemXy, jep. out:ille ei btw immediatena voi indeksoida noin suuria portteja, vaan pitää: "mov dx, 3c9h :: out dx, al" tai vastaavaa.

Juhko [15.10.2006 17:47:54]

#

Tästä onkin hyötyä...

edit (2 vuotta myöhemmin ;) ): Tein tuosta vielä semmoisen, että kuva himmennetään takaisin mustaks.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta