HP Forums
[SOLVED] Tunnel Syntax error (2014.0331) - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: HP Prime (/forum-5.html)
+--- Thread: [SOLVED] Tunnel Syntax error (2014.0331) (/thread-1429.html)



[SOLVED] Tunnel Syntax error (2014.0331) - Kevin Ouellet - 05-27-2014 08:20 PM

Anyone knows why this HP Prime program gives Syntax error in the new HP Prime firmware?


Code:
EXPORT Tunnel() BEGIN
DIMGROB_P(G1,340,240);
BLIT_P(G1,G0);
FOR Z FROM 3 TO 237 STEP 3 DO
BLIT_P(G0,0,0,320,240,G1,0,0,320,240-Z);
END;
1▶C;
0▶P;
100▶Y;
20▶T;
128▶L;
0▶L1(512);


FOR Z FROM 0 TO 16 DO
RANDOM(100)▶L1(2*Z+1);
60-RANDOM(4)▶L1(2*Z+2);
END;
RECT_P(G1,0,0,319,35,RGB(30,100,255),RGB(30,100,255));
TEXTOUT_P("2013 DJ Omnimaga www.omnimaga.org",G1,128,25,1,RGB(255,255,255));
FOR Z FROM 0 TO 10 DO
TEXTOUT_P("Score:",G1,Z,0,7,RGB(25*Z,255-(25*Z),0),250);
TEXTOUT_P("τ υ η η ε ι  ρ ɾ ί м ɛ",G1,122+Z,0,7,RGB(0,25*Z,0),250);
END;
FOR Z FROM 0 TO 4 DO
LINE_P(G1,0,Z+35,319,Z+35,RGB(0,20*Z,0));
END;
WHILE Y>0 DO
FOR Z FROM 0 TO 15 DO
C+1▶C;
IF C>16 THEN
1▶C;
END;
L1(2*C+2)▶O;
L1(2*C+1)▶Q;
RECT_P(G1,20*Z,40,20*Z+19,O,RGB(0,50+Q,0),RGB(0,50+Q,0));
RECT_P(G1,20*Z,O,20*Z+19,O+L,RGB(100+Q,130,50),RGB(100+Q,130,50));
RECT_P(G1,20*Z,O+L,20*Z+19,246,RGB(0,50+Q,0),RGB(0,50+Q,0));
IF Z=0 THEN
RECT_P(G1,0,Y,8,Y+12,RGB(0,0,0),RGB(150,150,255));
RECT_P(G1,2,Y+4,14,Y+8,RGB(0,0,0),RGB(255,0,0));
IF Y<O OR Y+12>O+L THEN
−9▶Y;
END;
END;
END;
TEXTOUT_P(P,G1,70,2,6,RGB(0,0,0),200,RGB(30,100,255));
TEXTOUT_P(P,G1,72,2,6,RGB(5,255,255));


BLIT_P(G0,0,0,320,240,G1,0,0,320,240);
P+1▶P;
L1(2*C+2)▶S;
RANDOM(100)▶U;
S+RANDOM(30)-15▶Ans;
IF Ans<45 THEN
45▶Ans;
ELSE
IF Ans>213-L THEN
213-L▶Ans;
END;
END;
C+1▶C;
IF C>16 THEN
1▶C;
L-1▶L;
END;
Ans▶L1(2*C+2);
U▶L1(2*C+1);
Y-(5*ISKEYDOWN(2))+(5*ISKEYDOWN(12))▶Y;
END;
FOR Z FROM 0 TO 7 DO
INVERT_P();
WAIT(0.05);
END;
DIMGROB_P(G1,122,30);
BLIT_P(G1,0,0,122,30,G0,0,0,122,30);
RECT_P(RGB(30,100,255));
REPEAT 
GETKEY▶Z;
BLIT_P(G0,RANDOM(10),RANDOM(10),320-RANDOM(10),240-RANDOM(10),G1,0,0,122,30);
WAIT(.02);
UNTIL ISKEYDOWN(4)=1 OR ISKEYDOWN(30)=1;
END;
 
END;

The syntax error points to the last END; command ???. The game works perfectly in the previous firmware.


EDIT: Nvm, it appears to work fine without the last End. Not sure why it did work fine on previous firmwares if that END was not necessary, though ???


RE: Tunnel Syntax error (2014.0331) - patrice - 05-27-2014 08:33 PM

I would say that there is one END too much.
remove the last END.
the parser is now tighter.


RE: [SOLVED] Tunnel Syntax error (2014.0331) - Kevin Ouellet - 05-27-2014 08:53 PM

Yeah I just realized this now. I guess I didn't realize there were too many ends because the parser used to ignore it or something. Thanks anyway!