Tietokonelaitteisto sisältää useita merkkivaloja, joiden vilkuttaminen onnistuu helposti myös QBasicilla. Tämä listaus sisältää pari käyttökelpoista aliohjelmaa näppäimistön ja diskettiaseman valojen kontrollointiin sekä esimerkin, joka vilkuttaa kaikkia valoja viisitoista kertaa.
Näppäimistön merkkijonojen vaihtamisesta voi olla oikeastikin hyötyä, sillä valoa vaihtaessa myös Num, Caps tai Scroll Lockin tila vaihtuu. Diskettiaseman valon vaihtamisesta sen sijaan on tuskin juuri hyötyä, lähinnä voi uskotella ohjelman käyttäjälle, että diskettiasemassa tapahtuu jotain.
Itselläni näppäimistön merkkivalojen ajastettu vaihtaminen, kuten tässä esimerkissä, lukitsi jotenkin oudosti Insert-näppäimen, ja QBasic piti käynnistää monesti uudestaan. Lisäksi Win2000:ssa diskettiaseman valon vilkuttaminen ei jostain syystä onnistunut.
'Esimerkkiohjelma Num, Caps, ja Scroll Lockin sekä
'diskettiaseman valon käsittelystä
'
'Copyright Antti Laaksonen 2002 - www.ohjelmointiputka.net
DECLARE SUB VaihdaLukko (I%, t%)
DECLARE SUB VaihdaDiskettiValo (t%)
'VaihdaLukko-aliohjelman parametrit:
'VaihdaLukko(i%,t%)
'
'i% = 0 Num Lock
'i% = 1 Caps Lock
'i% = 2 Scroll Lock
'
't% = 0 pois
't% = 1 päälle
'VaihdaDiskettiValo-aliohjelman parametrit:
'VaihdaDiskettiValo(t%)
'
't% = 0 pois
't% = 1 päälle
'sytyttää ja sammuttaa valoja 15 kertaa
FOR I = 1 TO 15
a! = TIMER
DO WHILE a! + .1 > TIMER: LOOP
v% = ABS(v% - 1)
VaihdaLukko 0, v%
VaihdaLukko 1, v%
VaihdaLukko 2, v%
VaihdaDiskettiValo v%
IF INKEY$ = CHR$(27) THEN GOTO loppu
NEXT
loppu:
VaihdaDiskettiValo 0
SUB VaihdaDiskettiValo (t%)
IF t% = 0 THEN
OUT &H3F2, 10
ELSE
OUT &H3F2, 28
END IF
END SUB
SUB VaihdaLukko (I%, t%)
DIM K(2) AS INTEGER
K(0) = 34: K(1) = 66: K(2) = 18
num% = K(I%)
DEF SEG = &H40
a% = PEEK(&H17)
IF t% = 0 THEN
l% = ABS(a% IMP num%) + 1
ELSE
l% = a% OR num%
END IF
POKE &H17, l%
END SUBhiano
tollanen on ihan nätti! piipperin rämpyttäjät voivat heittää musiikin sekaan vähän hienoa valorämpytystä.. tai sitten vaan jonkin pelin pelin alkuun tolla jotain hienoa..
Hyvähän tuo on.. mainio vinkki vaikka kone kaatuikin pari kertaa :)
*heh*
mielenkiintoinen värkki, vaikka valoillahan ei saisi leikkiä :)
Entä CD-aseman valo?
-PC-Master-
nätti on ja hauska.
aika lyhyt.
toimii
eikö tuohon pitäisi lisätä
DEF SEG
että se menisi takaisin normaaliin tilaan?
siis miten te saatte tuon näkymään ja millä ohjelmalla???
oon kokeillu vaikka sun mitä...
Ihan kiva, mutta mitään noista lampuista ei löydy meikäläisen ikivanhasta läppäristä.
Mutta... Toihan ei toimi DOSBoxin kautta QBASIC:lla ajettuna.
ei toimi
Copyright... AAAAAAAAAARGH!!!
Not work...
Mitään ei tapahdu...
Valot saa sammumaan kirjoittamalla loppu- osioon:
VaihdaLukko 0, 0 VaihdaLukko 1, 0 Vaihdalukko 2, 0
Sotkee Insert-näppäimen, mutta valot eivät vaihdu...
WWWWWWWWWAAAAAAAAAAAUUUUUUUUUUUU!!!!!!!!!!
Aihe on jo aika vanha, joten et voi enää vastata siihen.