ARTILLERY.BAS - Program Flow Diagram

Complete flow diagram showing all GOTO/GOSUB jumps and program structure
5-10 START 15-16 Instructions? (INPUT) 16 N? 20-140 SHOW INSTRUCTIONS (PRINT) GET KEY 150-160 HGR SETUP HCOLOR=6 170-190 INIT GUN POSITIONS G(1), G(2) 200-230 INIT WIND W1, W2 240-340 DRAW GUNS HPLOT 360 GOSUB 1440 370 GOSUB 1630 380 FOR X8=1 TO 20 390-410 SWITCH PLAYER P1 410 GOSUB 1290 420 GOSUB 1580 430-440 INPUT A1, V1 (angle, vel) 441-442 Valid? 445 ERROR MSG 450-510 CALCULATE TRAJECTORY X1,Y1,T1,T2,W3 520 FOR Y8=0 TO T1 STEP T2 530-580 CALC X,Y POSITION with wind 590 Y < 9? 600 P1 < 0? 610-660 PLOT LEFT HCOLOR=5 680-730 PLOT RIGHT HCOLOR=3 750 GOSUB 1060 760 P2=5? 770 NEXT Y8 790 GOSUB 1160 800 Hit G(1)? 820-830 RIGHT WINS T3++ 850 Hit G(2)? 870-880 LEFT WINS T4++ 920 NEXT X8 930-951 Again? 990-1050 SHOW SCORE END SUBROUTINES 1060-1280 SUB 1060 Check Mountain Hit (1090-1110) Set P2=5 if hit Draw Explosion GOSUB 1630 RETURN 1160-1280 SUB 1160 Draw Explosion FOR Z=1 TO 5 RETURN 1290-1430 SUB 1290 Draw Player Indicator RETURN 1440-1570 SUB 1440 Calculate & Draw Mountain G2, G3 params RETURN 1580-1620 SUB 1580 Print Wind Direction RETURN 1630-1670 SUB 1630 Set X2, Y2 for Player RETURN YES→150 NO →150 IF<140→170 IF<0→240 NO →430 YES YES→750 NO YES NO →750 →750 YES→800 NO→770 YES →930 NO YES →930 NO LOOP→380 YES→150 NO GOSUB 1440 GOSUB 1630 GOSUB 1290 GOSUB 1580 GOSUB 1060 GOSUB 1160 GOSUB 1630

Legend

Sequential Flow
GOTO Jump
GOSUB Call
RETURN
Initialize
Input
Loop
Decision
Subroutine
End/Win

Key GOTO/GOSUB Jumps