Hallo,

Ik ben een leek in Qbasic programeren en ik heb daarom een vraag.

Ik ben bezig een programmatje aan het schrijven en dat moet starten als de bios tijd aan een bepaalde waarde voldoet.

Hoe ik de tijd kan zien weet ik dat is: PRINT TIME$

Maar die tijd moet bijvoorbeeld gelijk zijn aan 22:00.
Als dit zo is moet het programmatje (wat ik zelf heb geprogrameer en waar ik nog steeds versteld van sta dat het werkt) hieronder gaan werken

OUT &H378, 1
SLEEP 1
OUT &H378, 0
SLEEP 1
OUT &H378, 1
SLEEP 1
OUT &H379, 0
SLEEP 1
OUT &H378, 2
SLEEP 1
OUT &H379, 0
SLEEP 10
OUT &H378, 4
SLEEP 1
OUT &H378, 0

Wie kan mij helpen....

Bij voorbaat dank..

Rainman

Je zou het als volgt kunnen doen voor zover mijn qBasic kennis nog reikt:


Main:
StartTime$=Time$

Hours = Val(Left$(StartTime$, 2))
Mins = Val(Mid$(StartTime$, 4, 2))
If (Hours = "22") and (Mins = "00") Goto JouwRoutine

** rest van het programma
Goto Main


JouwRoutine:
OUT &H378, 1
SLEEP 1
OUT &H378, 0
SLEEP 1
OUT &H378, 1
SLEEP 1
OUT &H379, 0
SLEEP 1
OUT &H378, 2
SLEEP 1
OUT &H379, 0
SLEEP 10
OUT &H378, 4
SLEEP 1
OUT &H378, 0
Return

Tanx..

Ik snap het programmatje niet... maar als het maar doet...

Hartelijk dank

mm nee :P ik had wel eergens een spelletje: raad de tijd werkt ook zoiets kan ik mischien wel even opzoeken

[Bericht gewijzigd door Gerwin op ]

Ik heb het progje getest en hij geeft een error in deze regel:

If (Hours = "22") and (Mins = "00") Goto JouwRoutine

Geeft hij bij "22" de melding "type komen niet overeen

Wat nu ???...

laat de "aanhaaltekens" eens weg

Op 13 mei 2004 19:35:54 schreef sven:
laat de "aanhaaltekens" eens weg

Of de "vals" je vergelijkt een integer met een string variabele nu :)

wat ik altijd doe is dit

do
if time$ ="22:00:00" then goto jouw routine
*** rest van het programma***
loop

voor de zekerheid kan je het beste even nakijken hoe de tijd wordt geschreven, ik weet namelijk niet zeker of er een spatie voor of na moet

Oke tanx..

Ik zal het ff proberen..