If your code is as shown,the if statements mean nothing as each line after the if statement is scanned during each run cycle.The if statement label code needs to be located else where in the program so as it is scanned only when the if is true.
If your code is as shown,the if statements mean nothing as each line after the if statement is scanned during each run cycle.The if statement label code needs to be located else where in the program so as it is scanned only when the if is true.
meaning the line to follow the if then statement needs to be else were to make the statement do what it is suppose to do. Ok that makes a little sense when thinking about it. I tried pulling the line labels that would make the statement true elsewhere in my program and same results. it looks something like this:
CHECK:
if B6 = $31 and B7 < $35 then twenf '25
if B6 = $32 and B7 > $35 then fift '15
if B6 = $32 and B7 < $30 then nint '19
if B6 = $31 and B7 >$39 then twent '20
goto cs
twenf:
poke B6,$32: poke B7,$35:goto cs
fift:
poke B6,$31: poke B7,$35:goto cs
nint:
poke B6,$31: poke B7,$39:goto cs
twent:
poke B6,$32: poke B7,$30:goto cs
this make sense to having the if then statement work rather than the other one, but I still get no response to how I think that the the if then statement should work. I am still falling out of my limits when i do the scrolling of me wanted value of 15 to 20.
P.S. the whole program is attached
Last edited by Rhatidbwoy; - 31st October 2005 at 14:31.
if B6 = $31 and B7 < $35 then
poke B6,$32: poke B7,$35
endif
if B6 = $32 and B7 > $35 then
poke B6,$31: poke B7,$35
endif
if B6 = $32 and B7 < $30 then
poke B6,$31: poke B7,$39
endif
if B6 = $31 and B7 >$39 then
poke B6,$32: poke B7,$30
endif
goto cs
If you really are using PicBasic and NOT PicBasic Pro then any ENDIF and ELSE statements won't work for you. Keep that in mind when writing your program. You need to work around that. Some of the solutions presented won't work "as is" for that reason.
Rhatidbwoy has the right idea in his example.
Bart
I have never been able to get an "If - Then" command to work using more that one condition in PIC Basic. That is no A and B. Only A, then another question.
If I want to test a as 10 plus b at 20 for calling x:
loop:
if a = 10 then isb
loopb:
isb:
if b = 20 then x
goto loopb
AND and OR are valid PicBasic commands used with IF/THEN and the proper syntax is "IF A=1 AND B=2 THEN" so if your's aren't working I don't think that is the reason. I'm just not good enough at reading other people's code to sort out the why.
Sorry.
Bart
shouldnt the line "if B6 = $31 and B7 < $35 then twenf" read:
if B6 = $31 and B7 < $35 then GOTO twenf ?
or is the GOTO not required when using an if statement?
Bookmarks