oddemann Posted April 20, 2019 Share Posted April 20, 2019 (edited) http://www.ti99iuc.it/web/index.php?pageid=database_cerca&archivioid=284&fbclid=IwAR0qeL-rjLSZ19yikJKxzr19CqfhBjMg4eMvPRFGr-v6VTHPBDZs2RvXCac#.XLsOKSLVKUl Looking over the code and is at the moment "blind". Can anyone else see what is "missing"?Some more bugs out, but "BAD VALUE IN 260"Monster-Crash (Ext. BASIC) 10 CALL CHAR(127,"000042BD99244224") 20 CALL CHAR(141,"3C7EFFFFFFFF7E3C") 30 CALL CHAR(137,"8181C3E7FF7E3C18") 40 CALL CHAR(129,"183C7EFFFF7E3C1B") 50 CALL CHAR(138,"1F3C7BF0F0783C1F") 60 CALL CHAR(130,"0000FFFFFFFF") 70 CALL CHAR(139,"183C7EFFE7C38181") 80 CALL CHAR(131,"3C3C3C3C3C3C3C3C") 90 CALL CHAR(140,"F83C1E0F0F1E3CFB") 100 CALL CHAR(132,"0000030F1F1F3E3C") 110 CALL CHAR(133,"0000C0F0FBF87C3C") 120 CALL CHAR(134,"3C3E1F1F0F030000") 130 CALL CHAR(135,"3C7CFBF8F0C00000") 140 CALL CHAR(136,"0000001818000000") 150 BO=3 160 CALL COLOR(13,5,1) 170 CALL COLOR(14,7,1) 180 CALL SCREEN(16) 190 CALL CLEAR 200 FOR I=1 TO 46 210 READ A,B,C,D 220 CALL HCHAR(A,B,C,D) 230 NEXT I 240 FOR I=1 TO 8 250 READ A 260 CALL HCHAR(A,16,32,3) 270 NEXT I 280 FOR I=1 TO 22 290 READ A,B,C,D 300 CALL VCHAR(A,B,C,D) 310 NEXT I 320 FOR I=1 TO 8 330 READ A 340 CALL VCHAR(11,A,32,3) 350 NEXT I 360 CALL HCHAR(12,16,129,BO) 370 Z=14 380 S=6 390 ZZU1=2 400 ZZU2=2 410 SZU1=6 420 SZU2=6 430 ZZU3=2 440 SZU3=6 450 G1=136 460 G2=136 470 G3=136 480 ZNEU=13 490 SNEU=6 500 RANDOMIZE 510 ZAEHLER=0 520 READ ZADD,SADD,ZE2 530 ZE1=141 540 PUNKTE=232 550 CALL HCHAR(Z-ZADD,S-SADD,32) 560 ZEI= ZE1 570 ZE1=ZE2 580 ZE2=ZEI 590 CALL HCHAR(Z,S,ZEI) 600 CALL SOUND(50,ZEI*10,20) 610 IF Z<>12 THEN 760 ELSE 620 620 CALL KEY(0,TASTE,STATUS) 630 IF STATUS=0 THEN 900 640 IF TASTE<>83 THEN 700 650 CALL GCHAR(Z,S-1,YY) 660 IF YY=131 THEN 900 670 CALL HCHAR(Z,S,32) 680 S=S-2 690 GOTO 900 700 IF TASTE<>68 THEN 900 710 CALL GCHAR(Z,S+1,YY) 720 IF YY=131 THEN 900 730 CALL HCHAR(Z,S,32) 740 S=S+2 750 GOTO 900 760 IF S<>17 THEN 900 770 CALL KEY(0,TASTE,STATUS) 780 IF STATUS=0 THEN 900 790 IF TASTE<>69 THEN 850 800 CALL GCHAR(Z-1,S,YY) 810 IF YY=130 THEN 900 820 CALL HCHAR(Z,S,32) 930 Z=Z-2 840 GOTO 900 850 IF TASTE=88 THEN 860 ELSE 900 860 CALL GCHAR(Z+1,S,YY) 870 IF YY=130 THEN 900 880 CALL HCHAR(Z,S,32) 890 Z=Z+2 900 Z=Z+ZADD 910 S=S+SADD 920 ZUF=INT(RND*20) 930 IF ZUF<>1 THEN 1090 940 CALL HCHAR(ZZU1,SZU1,G1,1) 950 CALL HCHAR(ZZU2,SZU2,G2,1) 980 CALL HCHAR(ZZU3,SZU3,G3,1) 870 ZZU1=INT((RND*11)+1)*2 980 SZU1=(INT((RND*12)+1)*2)+4 990 ZZU2=INT((RND*11)+1)*2 1000 SZU2=(INT((RND*12)+1)*2)+4 1010 CALL GCHAR(ZZU1,SZU1,G1) 1020 CALL GCHAR(ZZU2,SZU2,G2) 1030 CALL HCHAR(ZZU1,SZU1,127,1) 1040 CALL HCHAR(ZZU2,SZU2,127,1) 1050 ZZU3=INT((RND*11)+1)*2 1060 SZU3=(INT((RND*12)+1)*2)+4 1070 CALL GCHAR(ZZU3,SZU3,G3) 1080 CALL HCHAR(ZZU3,SZU3,127,1) 1090 CALL GCHAR(Z,S,XX) 1100 IF XX=127 THEN 1610 1110 IF XX<>136 THEN 1130 1120 PUNKTE=PUNKTE-1 1130 IF PUNKTE<8 THEN 1520 1140 IF XX=130 THEN 1160 1150 IF XX<>131 THEN 550 1160 Z=Z-ZADD 1170 S=S-SADD 1180 READ ZADD,SADD,ZE1 1180 ZAEHLER=ZAEHLER+1 1200 IF ZAEHLER<>3 THEN 1230 1210 RESTORE 1510 1220 ZAEHLER=-1 1230 Z=Z+ZADD 1240 S=S+SADD 1250 GOTO 550 1260 DATA 1,5,132,1,1,6,130,23,1,29,133,1,2,6,136,23 1270 DATA 3,7,132,1,3,8,130,19,3,27,133,1,4,8,136,19 1280 DATA 5,9,132,1,5,10,130,15,5,25,133,1,6,10,136,15 1290 DATA 7,11,132,1,7,12,130,11,7,23,133,1,8,12,136,11 1300 DATA 9,13,132,1,9,14,130,7,9,21,133,1,10,14,136,7 1310 DATA 11,15,132,1,11,16,130,3,11,19,133,1 1320 DATA 13,15,134,1,13,16,130,3,13,19,135,1 1330 DATA 15,13,134,1,15,14,130,7,15,21,135,1,14,14,136,7 1340 DATA 17,11,134,1,17,12,130,11,17,23,135,1,16,12,136,11 1350 DATA 19,9,134,1,19,10,130,15,19,25,135,1,18,10,136,15 1360 DATA 21,7,134,1,21,8,130,19,21,27,135,1,20,8,136,19 1370 DATA 23,5,134,1,23,6,130,23,23,29,135,1,22,6,136,23 1380 DATA 3,5,7,9,15,17,19,21 1380 DATA 2,5,131,21,2,6,136,21 1400 DATA 4,7,131,17,4,8,136,17 1410 DATA 6,9,131,13,9,10,136,13 1420 DATA 8,11,131,9,8,12,136,9 1430 DATA 10,13,131,5,10,14,136,5 1440 DATA 12,15,131,1,12,19,131,1 1450 DATA 10,21,131,5,10,20,136,5 1460 DATA 8,23,131,9,8,22,136,9 1470 DATA 6,25,131,13,6,24,136,13 1480 DATA 4,27,131,17,4,26,136,17 1490 DATA 2,29,131,21,2,28,136,21 1500 DATA 7,9,11,13,21,23,25,27 1510 DATA -1,0,137,0,1,138,1,0,139,0,-1,140 1520 CALL CLEAR 1530 CALL SCREEN(3) 1540 PRINT "PRIMA GEMACHT ! ! !" 1550 CALL SOUND(500,220,0) 1560 CALL SOUND(500,440,0) 1570 CALL SOUND(500,880,0) 1580 PRINT 1590 PRINT 1600 GOTO 1720 1610 FOR I=0 TO 30 1620 CALL SOUND(100,-6,I) 1630 NEXT I 1640 BO=BO-1 1650 IF BO=-1 THEN 1700 1660 REM 1670 CALL HCHAR(12,16,32,3) 1680 CALL HCHAR(12,16,129,BO) 1690 GOTO 1110 1700 CALL CLEAR 1710 CALL SCREEN(11) 1720 PRINT "NOCHMAL (J/N)" 1730 BO=3 1740 CALL KEY(0,K,S) 1750 IF S=0 THEN 1740 1760 RESTORE 1770 IF K=74 THEN 160 1780 END Edited April 21, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
ti99iuc Posted April 20, 2019 Share Posted April 20, 2019 (edited) i found some OCR mistakes and fixed, but still not works 10 CALL CHAR(127,"000042BD99244224") 20 CALL CHAR(141,"3C7EFFFFFFFF7E3C") 30 CALL CHAR(137,"8181C3E7FF7E3C18") 40 CALL CHAR(129,"183C7EFFFF7E3C18") 50 CALL CHAR(138,"1F3C78F0F0783C1F") 60 CALL CHAR(130,"0000FFFFFFFF") 70 CALL CHAR(139,"183C7EFFE7C38181") 80 CALL CHAR(131,"3C3C3C3C3C3C3C3C") 90 CALL CHAR(140,"F83C1E0F0F1E3CF8") 100 CALL CHAR(132,"0000030F1F1F3E3C") 110 CALL CHAR(133,"0000C0F0F8F87C3C") 120 CALL CHAR(134,"3C3E1F1F0F030000") 130 CALL CHAR(135,"3C7CF8F8F0C00000") 140 CALL CHAR(136,"0000001818000000") 150 BO=3 160 CALL COLOR(13,5,1) 170 CALL COLOR(14,7,1) 180 CALL CLEAR 200 FOR I=1 TO 46 210 READ A,B,C,D 220 CALL HCHAR(A,B,C,D) 230 NEXT I 240 FOR I=1 TO 8 250 READ A 260 CALL HCHAR(A,16,32,3) 270 NEXT I 280 FOR I=1 TO 22 290 READ A,B,C,D 300 CALL VCHAR(11,A,32,3) 310 NEXT I 320 FOR I=1 TO 8 330 READ A 340 CALL VCHAR(11,A,32,3) 350 NEXT I 360 CALL HCHAR(12,16,129,BO) 370 Z=14 380 S=6 390 ZZU1=2 400 ZZU2=2 410 SZU1=6 420 SZU2=6 430 ZZU3=2 440 SZU3=6 450 G1=136 460 G2=136 470 G3=136 480 ZNEU=13 490 SNEU=6 500 RANDOMIZE 510 ZAEHLER=0 520 READ ZADD,SADD,ZE2 530 ZE1=141 540 PUNKTE=232 550 CALL HCHAR(Z-ZADD,S-SADD,32) 560 ZEI=ZE1 570 ZE1=ZE2 580 ZE2=ZEI 590 CALL HCHAR(Z,S,ZEI) 600 CALL SOUND(50,ZEI*10,20) 610 IF Z<>12 THEN 760 ELSE 620 620 CALL KEY(0,TASTE,STATUS) 630 IF STATUS=O THEN 900 640 IF TASTE<>83 THEN 700 650 CALL GCHAR(Z,S-1,YY) 660 IF YY=131 THEN 900 670 CALL HCHAR(Z,S,32) 680 S=S-2 690 GOTO 900 700 IF TASTE<>68 THEN 900 710 CALL GCHAR(Z,S+1,YY) 720 IF YY=131 THEN 900 730 CALL HCHAR(Z,S,32) 740 S=S+2 750 GOTO 900 760 IF S<>17 THEN 900 770 CALL KEY(O,TASTE,STATUS) 780 IF STATUS=0 THEN 900 790 IF TASTE<>69 THEN 850 800 CALL GCHAR(Z-1,S,YY) 810 IF YY=130 THEN 900 820 CALL HCHAR(Z,S,32) 840 GOTO 900 850 IF TASTE=88 THEN 860 ELSE 900 860 CALL GCHAR(Z+1,S,YY) 870 ZZU1=INT((RND*11)+1)*2 880 CALL HCHAR(Z,S,32) 890 Z=Z+2 900 Z=Z+ZADD 910 S=S+SADD 920 ZUF=INT(RND*20) 930 IF ZUF<>1 THEN 1090 940 CALL HCHAR(ZZU1,SZU1,G1,1) 950 CALL HCHAR(ZZU2,SZU2,G2,1) 980 SZU1=(INT((RND*12)+1)*2)+4 990 ZZU2=INT((RND*11)+1)*2 1000 SZU2=(INT((RND*12)+1)*2)+4 1010 CALL GCHAR(ZZU1,SZU1,G1) 1020 CALL GCHAR(ZZU2,SZU2,G2) 1030 CALL HCHAR(ZZU1,SZU1,127,1) 1040 CALL HCHAR(ZZU2,SZU2,127,1) 1050 ZZU3=INT((RND*11)+1)*2 1060 SZU3=(INT((RND*12)+1)*2)+4 1070 CALL GCHAR(ZZU3,SZU3,G3) 1080 CALL HCHAR(ZZU3,SZU3,127,1) 1090 CALL GCHAR(Z,S,XX) 1100 IF XX=127 THEN 1610 1110 IF XX<>136 THEN 1130 1120 PUNKTE=PUNKTE-1 1130 IF PUNKTE<8 THEN 1520 1140 IF XX=130 THEN 1160 1150 IF XX<>131 THEN 550 1160 Z=Z-ZADD 1170 S=S-SADD 1180 ZAEHLER=ZAEHLER+1 1200 IF ZAEHLER<>3 THEN 1230 1210 RESTORE 1510 1220 ZAEHLER=-1 1230 Z=Z+ZADD 1240 S=S+SADD 1250 GOTO 550 1260 DATA 1,5,132,1,1,6,130,23,1,29,133,1,2,6,136,23 1270 DATA 3,7,132,1,3,8,130,19,3,27,133,1,4,8,136,19 1280 DATA 5,9,132,1,5,10,130,15,5,25,133,1,6,10,136,15 1290 DATA 7,11,132,1,7,12,130,11,7,23,133,1,8,12,136,11 1300 DATA 9,13,132,1,9,14,130,7,9,21,133,1,10,14,136,7 1310 DATA 11,15,132,1,11,16,130,3,11,19,133,1 1320 DATA 13,15,134,1,13,16,130,3,13,19,135,1 1330 DATA 15,13,134,1,15,14,130,7,15,21,135,1,14,14,136,7 1340 DATA 17,11,134,1,17,12,130,11,17,23,135,1,16,12,136,11 1350 DATA 19,9,134,1,19,10,130,15,19,25,135,1,18,10,136,15 1360 DATA 21,7,134,1,21,8,130,19,21,27,135,1,20,8,136,19 1370 DATA 23,5,134,1,23,6,130,23,23,29,135,1,22,6,136,23 1380 DATA 2,5,131,21,2,6,136,21 1400 DATA 4,7,131,17,4,8,136,17 1410 DATA 6,9,131,13,6,10,136,13 1420 DATA 8,11,131,9,8,12,136,9 1430 DATA 10,13,131,5,10,14,136,5 1440 DATA 12,15,131,1,12,19,131,1 1450 DATA 10,21,131,5,10,20,136,5 1460 DATA 8,23,131,9,8,22,136,9 1470 DATA 6,25,131,13,6,24,136,13 1480 DATA 4,27,131,17,4,26,136,17 1490 DATA 2,29,131,21,2,28,136,21 1500 DATA 7,9,11,13,21,23,25,27 1510 DATA -1,0,137,0,1,138,1,0,139,0,-1,140 1520 CALL CLEAR 1530 CALL SCREEN(3) 1540 PRINT "PRIMA GEMACHT ! ! !" 1550 CALL SOUND(500,220,0) 1560 CALL SOUND(500,440,0) 1570 CALL SOUND(500,880,0) 1580 PRINT 1590 PRINT 1600 GOTO 1720 1610 FOR I=0 TO 30 1620 CALL SOUND(100,-6,I) 1630 NEXT I 1640 BO=BO-1 1650 IF BO=-1 THEN 1700 1660 REM 1670 CALL HCHAR(12,16,32,3) 1680 CALL HCHAR(12,16,129,BO) 1690 GOTO 1110 1700 CALL CLEAR 1710 CALL SCREEN(11) 1720 PRINT "NOCHMAL (J/N)" 1730 BO=3 1740 CALL KEY(0,K,S) 1750 IF S=0 THEN 1740 1760 RESTORE 1770 IF K=74 THEN 160 1780 END Edited April 20, 2019 by ti99iuc Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) Next...Working, but picture is wonky and some sounds! Beethovens 9. Symphonie 10 DIM S$(10) 20 S$(1)="010101030303071FFEFCF0C00000000080808080808000000000000000000000" 30 S$(2)="0000000000000001FFFFFF00000000000000002070E0E0C0C080000000000000" 40 S$(3)="0000000000000000FFFFFF00000000000000000000000000FCFCF90000000000" 50 S$(4)="01010101010100000000000000000000808080C0C0C0E0F87F3F0F0300000000" 60 S$(5)="000000040E070703030100000000000000000000000000B0FFFFFF0000000000" 70 S$(6)="00000000000000003F3F1F00000000000000000000000000FFFFFF0000000000" 80 S$(7)="000307070707070703010F0F0F0F0F0F00C0E0E0E0E0E0E0C0B0F0F0F0F0F0F0" 90 S$(="0F0F0F0F0F0F0F0F1E1D1F1B17161616F0F0F0F0F0F0F0F07BB8F8DBE8686868" 100 S$(9)="060608060606060606061E3E3E00000060606060606060806060787C7C000000" 110 S$(10)="00707060606060606060606060606060000E0E06060606060606060606060606" 120 CALL COLOR(9,2,11,10,2,11,11,2,11,12,2,11,13,2,11,14,2,11) 130 FOR I=100 TO 136 STEP 4 140 CALL CHAR(I,S$((I-96)/4)) 150 NEXT I 160 CALL CLEAR 170 DISPLAY AT(17,14):CHR$(128):CHR$(130) :: DISPLAY AT(18,14):CHR$(129);CHR$(131) 180 DISPLAY AT(19,14):CHR$(132);CHR$(134) :: DISPLAY AT(20,14):CHR$(133):CHR$(135) 190 CALL MAGNIFY(3) 200 CALL SPRITE(#1,124,2,113,121,0,0) 210 CALL SPRITE(#2,112,2,115,109,0,0) :: CALL SPRITE(#3,100,2,115,133,0,0) 220 CALL SCREEN(3) 230 CALL COLOR(1,2,11,2,2,11,4,2,11,5,2,11,6,2,11,7,2,11,8,2,11) 240 DISPLAY AT(9,9):"9.SYMPHONIE" :: DISPLAY AT(10,4):"VON LUDWIG VAN BEETHOVEN" 250 H=1000 :: Q=500 :: E=235 260 CALL SOUND(Q,658,0,523,2,262,2) 270 CALL PATTERN(#2,116,#3,104) 280 CALL SOUND(Q,658,0,523,2,330,2) 280 CALL PATTERN(#2,120,#3,108) 300 CALL SOUND(Q,688,0,587,2,440,2) 310 CALL PATTERN(#2,118,#3,104) 320 CALL SOUND(Q,784,0,659,2,392,2) 330 CALL PATTERN(#2,112,#3,100) 340 CALL SOUND(Q,784,0,659,2,262,2) 350 CALL PATTERN(#2,116,#3,104) 360 CALL SOUND(Q,688,0,587,2,220,2) 370 CALL PATTERN(#2,120,#3,108) 380 CALL SOUND(Q,658,0,523,2,196,2) 390 CALL PATTERN(#2,118,#3,104) 400 CALL SOUND(Q,587,0,484,2,247,2) 410 CALL PATTERN(#2,112,#3,100) 420 CALL SOUND(Q,523,0,440,2,330,2) 430 CALL PATTERN(#2,116,#3,104) 440 CALL SOUND(Q,523,0,440,2,262,2) 450 CALL PATTERN(#2,120,#3,108) 480 CALL SOUND(Q,587,0,494,2,175,2) 470 CALL PATTERN(#2,116,#3,104) 480 CALL SOUND(Q,858,0,523,2,220,2) 480 CALL PATTERN(#2,112,#3,100) 500 CALL SOUND(750,659,0,523,2,220,2) 510 CALL PATTERN(#2,116,#3,104) 520 CALL SOUND(E,587,0,494,2,196,2) 530 CALL PATTERN(#2,112,#3,100) 540 CALL SOUND(H,587,0,494,2,196,2) 550 CALL PATTERN(#2,116,#3,104) 560 CALL SOUND(Q,659,0,523,2,262,2) 570 CALL PATTERN(#2,112,#3,100) 580 CALL SOUND(Q,659,0,523,2,330,2) 590 CALL PATTERN(#2,116,#3,104) 600 CALL SOUND(Q,698,0,587,2,440,2) 610 CALL PATTERN(#2,120,#3,108) 620 CALL SOUND(Q,784,0,858,2,392,2) 630 CALL PATTERN(#2,116,#3,104) 640 CALL SOUND(Q,784,0,659,2,262,2) 650 CALL PATTERN(#2,112,#3,100) 660 CALL SOUND(Q,688,0,587,2,220,2) 670 CALL PATTERN(#2,116,#3,100) 680 CALL SOUND(Q,658,0,523,2,196,2) 690 CALL PATTERN(#2,112,#3,100) 700 CALL SOUND(Q,587,0,494,2,247,2) 710 CALL PATTERN(#2,118,#3,104) 720 CALL SOUND(Q,523,0,440,2,330,2) 730 CALL PATTERN(#2,120,#3,108) 740 CALL SOUND(Q,523,0,440,2,262,2) 750 CALL PATTERN(#2,116,#3,104) 760 CALL SOUND(Q,587,0,484,2,175,2) 770 CALL PATTERN(#2,120,#3,108) 780 CALL SOUND(Q,658,0,523,2,220,2) 790 CALL PATTERN(#2,112,#3,100) 800 CALL SOUND(750,587,0,484,2,196,2) 810 CALL PATTERN(#2,116,#3,104) 820 CALL SOUND(E,523,0,392,2,131,2) 830 CALL PATTERN(#2,112,#3,100) 840 CALL SOUND(H,523,0,392,2,131,2) 850 CALL PATTERN(#2,116,#3,104) 880 CALL SOUND(Q,587,0,494,2) 870 CALL PATTERN(#2,112,#3,100) 880 CALL SOUND(Q,587,0,494,2) 890 CALL PATTERN(#3,104) 900 CALL SOUND(Q,659,0,523,2) 910 CALL PATTERN(#3,108) 920 CALL SOUND(Q,523,0,440,2) 930 CALL PATTERN(#3,104) 940 CALL SOUND(Q,587,0,494,2) 950 CALL PATTERN(#3,108) 980 CALL SOUND(E,859,0,523,2) 970 CALL PATTERN(#3,100) 980 CALL SOUND(E,692,0,587,2) 990 CALL PATTERN(#3,104) 1000 CALL SOUND(Q,658,0,523,2) 1010 CALL PATTERN(#3,100) 1020 CALL SOUND(Q,523,0,440,2) 1030 CALL PATTERN(#3,104) 1040 CALL SOUND(Q,587,0,494,2) 1050 CALL PATTERN(#3,108) 1060 CALL SOUND(E,658,0,523,2) 1070 CALL PATTERN(#3,104) 1080 CALL SOUND(E,698,0,587,2) 1090 CALL PATTERN(#3,100) 1100 CALL SOUND(Q,659,0,523,2) 1110 CALL PATTERN(#2,116,#3,104) 1120 CALL SOUND(Q,587,0,484,2) 1130 CALL PATTERN(#2,112) 1140 CALL SOUND(Q,523,0,440,2) 1150 CALL PATTERN(#2,120) 1160 CALL SOUND(Q,587,0,484,2) 1170 CALL PATTERN(#2,112) 1180 CALL SOUND(H,382,0) 1180 CALL PATTERN(#2,118) 1200 CALL SOUND(Q,858,0,523,2,262,2) 1210 CALL PATTERN(#2,112,#3,100) 1220 CALL SOUND(Q,858,0,523,2,330,2) 1230 CALL PATTERN(#2,120,#3,108) 1240 CALL SOUND(Q,698,0,587,2,440,2) 1250 CALL PATTERN(#2,112,#3,100) 1280 CALL SOUND(Q,784,0,659,2,392,2) 1270 CALL PATTERN(#2,120,#3,108) 1280 CALL SOUND(Q,784,0,659,2,262,2) 1280 CALL PATTERN(#2,116,#3,104) 1300 CALL SOUND(Q,698,0,587,2,220,2) 1310 CALL PATTERN(#2,112,#3,100) 1320 CALL SOUND(Q,659,0,523,2,196,2) 1330 CALL PATTERN(#2,116,#3,104) 1340 CALL SOUND(Q,587,0,494,2,247,2) 1350 CALL PATTERN(#2,120,#3,108) 1380 CALL SOUND(Q,523,0,440,2,330,2) 1370 CALL PATTERN(#2,116,#3,104) 1380 CALL SOUND(Q,523,0,440,2,262,2) 1390 CALL PATTERN(#2,112,#3,100) 1400 CALL SOUND(Q,587,0,494,2,175,2) 1410 CALL PATTERN(#2,116,#3,104) 1420 CALL SOUND(Q,859,0,523,2,220,2) 1430 CALL PATTERN(#2,112,#3,100) 1440 CALL SOUND(750,587,0,523,2,196,2) 1450 CALL PATTERN(#2,120,#3,108) 1460 CALL SOUND(E,523,0,392,2,131,2) 1470 CALL PATTERN(#2,112,#3,100) 1480 CALL SOUND(H,523,0,392,2,131,2) 1490 CALL PATTERN(#2,120,#3,108) 1500 FOR I=1 TO 500 :: NEXT I 1510 CALL DELSPRITE(#2,#3) :: CALL SPRITE(#2,136,2,122,121,0,0) 1520 FOR I=1 TO 500 :: NEXT I 1530 FOR I=1 TO 5 1540 CALL LOCATE(#1,113+2*I,121,#2,122+I,121) 1550 NEXT I 1560 FOR I=1 TO 500 :: NEXT I 1570 FOR I=1 TO 5 1580 CALL LOCATE(#1,123-2*I,121,#2,127-I,121) 1590 NEXT I 1800 DISPLAY AT(24.-5):"NOCHMAL (J/N)" 1610 FOR I=1 TO 100 1620 CALL KEY(O,K,S) 1630 IF K=74 THEN CALL HCHAR(24,1,32,32) :: GOTO 170 1640 IF K=78 THEN END 1650 NEXT I :: GOTO 1530 Edited April 20, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
ti99iuc Posted April 20, 2019 Share Posted April 20, 2019 (edited) automatic OCR can have errors. you have to check line by line to be sure that OCR recognized all the characters correctly. often can happens that automatic OCR exchange chars like: i as 1, or B as 8 or ( ) as <> and more. Edited April 20, 2019 by ti99iuc Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 Working on it!C=(>=)|=IG=QZ=2 1 Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) FREIER FALL 10 REM FREIER FALL******** 20 CALL SPRITE(#1,42,2,1,120,0,0) 30 VO=0 :: G=10 :: T=0 40 CALL CLEAR 50 V=VO+G*T 60 CALL MOTION(#1,V,0) 70 IF V>=50 THEN CALL DELSPRITE(#1):: END 80 T=T+0.1 :: GOTO 50 Edited April 20, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 How do I change the title of this tread?to "Programme fuer den TI-99/4A und TI-99/4" Quote Link to comment Share on other sites More sharing options...
ti99iuc Posted April 20, 2019 Share Posted April 20, 2019 I suggest to use this for paste the code.If you will not use this useful function the codes you will paste could not works anyway because the AtariAge forum change characters. Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) WURF NACH OBEN (WURF NACH OSEN) 90 REM WURF NACH OSEN****** 100 INPUT VO 110 CALL CLEAR 120 CALL SPRITE(#1,42,2,180,120,0,0) 130 G=-10 :: T=0 140 V=VO+G*T 150 CALL MOTION(#1,-V,0) 160 IF -V>=VO THEN CALL DELSPRITE(#1):: GOTO 100 170 T=T+.3 :: GOTO 140 Better? Edited April 20, 2019 by oddemann 1 Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 SCHIEFER WURF 180 REM SCHIEFER WURF******** 190 INPUT VO 200 CALL CLEAR 210 CALL SPRITE(#1,42,2,180,10,0,0) 220 T=0 :: G=-10 230 V=VO+G*T 240 CALL MOTION(#1,-V,20) 250 IF -V>VO THEN CALL DELSPRITE(#1):: GOTO 190 260 T=T+.3 :: GOTO 230 Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) Geschütz - BEISPIELPROGRAMMMaybe something wrong with graphics? 270 REM BEISPIELPROGRAMM***** 280 S1$="80808080808080800040404080808080" 280 S2$="00202040408080800010202040408080" 300 S3$="000004081020408000000000020C30C0" 310 S4$="00000000000618E00000000000000EF000000000000000FF" 320 CALL CHAR(96,S1$) :: CALL CHAR(98,S2$) :: CALL CHAR(100,S3$) :: CALL CHAR(102,S4$) 330 S5$="0000010303FFFFFFFF007FF0F8F8F07F00E0F0F8FBFFFFFFFF00FE0F1F1F0FFE" 340 CALL CHAR(105,S5$) 350 S10$="00000000000000000000000000000000000000000000000000000000000C0C0" :: CALL CHAR(120,S10$) 360 S6$="000001071F7FFF3F3F33333F3F33333300008CECFCFEFFFCFCCCCCFCFCFCFCFC" :: CALL CHAR(112,S6$) 370 CALL COLOR(11,7,1) :: CALL COLOR(12,1,13) 380 S7$="0000000000000000002233373F3373F10000040C0C0C0C0C8CCCCCFCFCFEFFFF" :: CALL CHAR(116,S7$) 380 CALL MAGNIFY(3) 400 CALL CLEAR 410 ZUF=100 420 INPUT "MIT WIND? (J/N)":W$ :: CALL CLEAR 430 DISPLAY AT(22,2):"ik" :: DISPLAY AT(23,2):"jl" 440 CALL HCHAR(24,1,120,32) 450 DISPLAY AT(22,4):"h" 460 IF W$="N" THEN WIND=0 :: GOTO 500 470 WIND=-20+INT(RND*40) :: DISPLAY AT(1,15):"WIND ---" :: DISPLAY AT(2,21):ABS(WIND) 480 IF WIND>0 THEN DISPLAY AT(1,24):">" 480 IF WIND<0 THEN DISPLAY AT(1,20)SIZE(1):"<" 500 CALL SPRITE(#3,112,7,170,ZUF,0,0) 510 DISPLAY AT(1,1)SIZE(:"WINKEL?" :: ACCEPT AT(1,10)SIZE(3):A 520 ST=INT(A/10):: IF ST>8 THEN ST=8 530 FOR I=104 TO 104-ST STEP -1 540 DISPLAY AT(22,4)SIZE(1):CHR$(I) 550 CALL SOUND(50,300,0) 560 NEXT I 570 V1=-INT(COS((90-A)*PI/180)*50) :: V2=INT(SIN((90-A)*PI/180)*45)+WIND 580 T=0 :: G=10 590 CALL SPRITE(#2,120,6,163,33,0,0) 600 CALL SOUND(500,-5,0) 610 V=V1+G*T 620 CALL MOTION(#2,V,V2) 630 CALL POSITION(#2,YPOS,XPOS) :: IF YPOS>=170 THEN 660 640 CALL COINC(#2,#3,10,CO):: IF CO=-1 THEN 670 650 T=T+.4 :: GOTO 610 660 CALL DELSPRITE(#2):: GOTO 500 670 CALL DELSPRITE(#2):: CALL SOUND(200,-6,0):: CALL PATTERN(#3,116) 680 FOR I=1 TO 500 :: NEXT I :: ZUF=INT(RND*180)+50 :: GOTO 460 Edited April 20, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 Sortieralgorithmen Almost correct sorting.. some mistake or I made a wrong "turn" 10 DIM A$(100) 20 CALL CLEAR 30 INPUT "ANZAHL DER ELEMENTE? ":AN 40 PRINT 50 FOR I=1 TO AN 60 PRINT I; 70 INPUT A$(I) 80 NEXT I 90 REM BUBBLESORT******** 100 FOR I=2 TO AN 110 FOR J=AN TO I STEP -1 120 IF A$(J-1)>A$(J) THEN 130 ELSE 160 130 X$=A$(J-1) 140 A$(J-1)=A$(J) 150 A$(J)=X$ 160 NEXT J 170 NEXT I 190 REM AUSGABE******* 190 PRINT 200 PRINT 210 FOR I=1 TO AN 220 PRINT I;A$(I) 230 NEXT I Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 More sorting! 10 AN=19 20 K=AN 30 DIM A(20),B(20),C(20),D(20) 40 REM ZUFALLSZAHLEN****** 50 FOR I=0 TO AN 60 D(I)=INT(RND*AN+1) 70 PRINT I+1;D(I) 80 NEXT I 90 FOR I=0 TO K-1 100 REM SORTIEREN******** 110 L=0 120 IF D(I+1)>D(L) THEN 180 130 IF A(L)=0 THEN 140 ELSE 160 140 A(L)=I+1 150 GOTO 230 160 L=A(L) 170 GOTO 120 180 IF B(L)=O THEN 190 ELSE 210 190 B(L)=I+1 200 GOTO 230 210 L=B(L) 220 GOTO 120 230 NEXT I 240 CALL KEY(0,KEY,STATUS) 250 IF STATUS=0 THEN 240 260 REM AUSGABE******** 270 M=-1 280 L=0 290 I=0 300 IF A(L)>0 THEN 310 ELSE 350 310 M=M+1 320 C(M)=L 330 L=A(L) 340 GOTO 300 350 IF I>K THEN 490 360 I=I+1 370 PRINT I;D(L) 380 IF B(L)=0 THEN 410 390 L=B(L) 400 GOTO 300 410 IF M<0 THEN 490 420 I=I+1 430 PRINT I;D(C(M)) 440 L=B(C(M)) 450 IF I>K THEN 490 460 M=M-1 470 IF L=0 THEN 410 480 GOTO 300 490 END Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) 7.4 Awari (Ext. BASIC) So fare... "IMPROPERLY USED NAME IN 440"There are some graff errors, but inntil I get the program to run, I dont bother with it, yet.More bugs out, but still a mystery... 10 CALL CLEAR 20 CALL SCREEN(4):: DISPLAY AT(8,:"T I A W A R I" 30 DISPLAY AT(12,7):"By R Heigenmoser" 40 S1$="000000000000000000000000000000001C3E7A7F7A3C1E0C0C1E3F3F3F3F3F3F" 50 S2$="000000000001020C1C3870E0F030080400006060800000000000000000000000" 60 S3$="0000000000000000000101030F0F03013F3F3F3F7F7F77E3E3C1C180800080C0" 70 S4$="020101DEDEDE0080C0C0C0ECFC783020008080E0E0E000000000000000000000" 80 S5$="000000000000000000000000000000003F3F3F3F3F3F3B3B3371716161E1F1F1" 90 S6$="0000000000000000010F38FBFF0000000000000000000060E00000C0C0000000" 100 S7$="000000DEDEDE0080808080808080C0E0000000E0E0E000000000000000000000" 110 CALL CHAR(36,S1$):: CALL CHAR(40,S2$):: CALL CHAR(44,S3$):: CALL CHAR(48,S4$):: CALL CHAR(52,S5$) 120 CALL CHAR(56,S5$):: CALL CHAR(60,S7$) 130 DISPLAY AT(20,7):"TASTE DRUECKEN !" 140 CALL SPRITE(#1,36,5,140,1,0,5):: CALL SPRITE(#2,40,5,140,18,0,5) 150 CALL SPRITE(#3,44,5,156,3,0,5):: CALL SPRITE(#4,48,5,156,19,0,5) 160 CALL MAGNIFY(3) 170 CALL PATTERN(#2,56):: CALL PATTERN(#3,52) :: CALL PATTERN(#4,60) 180 CALL SOUND(100,-7,10) 190 CALL PATTERN(#2,40):: CALL PATTERN(#3,44) :: CALL PATTERN(#4,48) 200 FOR DELAY=1 TO 40 :: NEXT DELAY 210 CALL KEY(5,KE,STA):: IF STA=0 THEN 170 220 CALL DELSPRITE(#1) :: CALL DELSPRITE(#2) :: CALL DELSPRITE(#3) :: CALL DELSPRIT E ( #4 ) 230 CALL CHARSET 240 DIM S$(13) 250 CALL COLOR(9,7,16):: CALL COLOR(10,7,16)::CALL COLOR(11,7,16) 260 CALL SCREEN(16) 270 S$(1)="kssssssssssssssssssssEssssl" :: S$(2)="ssssocchcchcchcchcchcc'ssss" 280 S$(3)="ssssF J J J J J dssss" :: S$(4)="9999aeeieeieeieeieeieeb9999" 290 S$(5)="gggggg6ss599499399299199999" :: S$(6)="occc'sgssssssss99999ssoccc'" 300 S$(7)="f dssssTisgAWARissss" :: S$(="aeeeb999999999999sssssaeeeb" 310 S$(13)="Msss999sssssssss999ssssssgn" 320 S$(9)="9999ggl992gg3sg499599699999" 330 S$(10)=S$(2):: S$(11)=S$(3):: S$(12)=S$(4) 340 CALL CLEAR 350 CALL CHAR ( 107,"071F3F7F7FFFFFFF"):: CALL CHAR(108,"E0F8FCFEFEFFFFFF"):: CALL CHAR(109,"FFFFFF7F7F3F1F07") 360 CALL CHAR(110,"FFFFFFFEFEFCF8E0"):: CALL CHAR(111,"FFFFFEFCF8F8F8F8"):: CALL CHAR(96,"FFFF7F3F1F1F1F1F") 370 CALL CHAR(97,"FSFSF8F8FCFEFFFF"):: CALL CHAR(98,"1F1F1F1F3F7FFFFF"):: CALL CHAR(99,"FFFF"):: CALL CHAR(100,"1F1F1F1F1F1F1F1F") 380 CALL CHAR(101,"000000000000FFFF"):: CALL CHAR(102,"F8F8F8F8F8F8F8F8"):: CALL CHAR(103,"FFFFFFFFFFFFFFFF") 390 CALL CHAR(104,"FFFF7E3C18181818"):: CALL CHAR(105,"181818183C7EFFFF"):: CALL CHAR(106,"1818181818181819") 400 FOR I=1 TO 13 :: DISPLAY AT(5+I,1):S$(I):: NEXT I 410 DISPLAY AT(1,6):"COMPUTER" :: DISPLAY AT(1,20):"DU" 420 DATA 0 430 DIM B(13), G(13), F(50) :: READ N :: COM=0 :: DU=0 440 E=0 :: DISPLAY AT(3,:COM :: DISPLAY AT(3,19):DU 450 FOR I=0 TO 12 :: B(I)=3 :: NEXT I 460 C=0 :: F(N)=0 :: B(13)=0 :: B(6)=0 470 GOSUB 750 480 IF Z1=1 THEN Z1=0 :: GOTO 530 490 DISPLAY AT(21,1):"DEIN ZUG" :: GOSUB 620 500 IF E=0 THEN 570 510 IF M=H THEN GOSUB 610 520 IF E=0 THEN 570 530 DISPLAY AT(23,1):"MEIN ZUG IST" :: SS=15 :: GOSUB 920 540 IF E=0 THEN 570 550 IF M=H THEN DISPLAY AT(23,16):"," :: SS=17 :: GOSUB 920 560 IF E>0 THEN 470 570 DISPLAY AT(21,1)SIZE(80)BEEP:"SPIEL IST VORBEI" 580 D=B(6)-B(13) :: IF D<0 THEN DISPLAY AT(23,1):"ICH GEWINNE MIT";-D:"PUNKTEN" :: COM=COM-D :: GOTO 1110 590 N=N+1 :: IF D=0 THEN DISPLAY AT(23,1):"UNENTSCHIEDEN" :: GOTO 1110 600 DISPLAY AT(23,1):"DU GEWINNST MIT":D;"PUNKTEN" :: DU=DU+D :: GOTO 1110 610 DISPLAY AT(21,1):"NOCHMAL" 620 ACCEPT AT(21,15)VALIDATE(DIGIT)BEEP SIZE(10):M :: IF M<7 THEN IF M>0 THEN M=M-1 :: CALL HCHAR(24,1,32,20):: GOTO 640 630 DISPLAY AT(24,1):"UNERLAUBTER ZUG" :: GOTO 610 640 IF B(M)=0 THEN 630 650 H=S :: GOSUB 670 660 GOTO 750 670 K=M :: GOSUB 960 680 E=0 :: IF K>6 THEN K=K-7 690 C=C+1 :: IF C<S THEN F(N)=F(N)*6+K 700 FOR I=0 TO 5 :: IF B(I)<>0 THEN 730 710 NEXT I 720 RETURN 730 FOR I=7 TO 12 :: IF B(I)<>0 THEN E=1 :: RETURN 740 NEXT I :: RETURN 750 REM 760 CALL COLOR(3,13,16,4,13,16) 770 Z=8 :: DIS=3 :: FOR I-12 TO 7 STEP -1 GOSUB 840 780 NEXT I 790 DISPLAY AT(12,24)SIZE(3):B(6) 800 DISPLAY AT(12,2)SIZE(3):B(13) 810 Z=16 :: DIS=3 :: FOR I=0 TO 5 :: GOSUB 840 820 NEXT I 830 RETURN 840 REM 850 DISPLAY AT(Z,3+DIS)SIZE(2):B(I):: DIS=DIS+3 :: RETURN 860 P=B(M):: B(M)=0 870 FOR P=P TO 1 STEP -1 :: M=M+1 :: IF M>13 THEN M=M-14 880 8(M)=B(M)+1 :: NEXT P 890 IF B(M)=1 THEN IF M<>S THEN IF M<>13 THEN IF 8(12-M)<>0 THEN 910 900 RETURN 910 B(H)=B(H)+B(12-M)+1 :: B(M)=0 :: 8(12-M)=0 :: RETURN 920 D=-99 :: H=13 930 FOR I=0 TO 13 :: G(I)=B(I):: NEXT I 940 FOR J=7 TO 12 :: IF B(J)=0 THEN 1080 950 GG=0 :: M=J :: GOSUB 860 960 FOR I=0 TO 5 :: IF 8(1)=0 THEN 1010 970 L=B(I)+I :: R=0 980 IF L>13 THEN L=L-14 :: R=1 :: GOTO 980 990 IF B(L)=0 THEN IF L<>16 THEN IF L<>13 THEN R=B(12-L)+R 1000 IF R>Q THEN Q=R 1010 NEXT I 1020 Q=B(13)-8(G)-Q :: IF C>8 THEN 1060 1030 K=J :: IF K>6 THEN K=K-7 1040 FOR I=0 TO N-1 :: IF F(N)*6+K=INT(F(I)/6^(7-C)+.1) THEN Q=Q-2 1050 NEXT I 1060 FOR I=0 TO 13 :: B(I)=Q(I):: NEXT I 1070 IF Q>=D THEN A=J :: D=Q 1080 NEXT J 1090 M=A :: DISPLAY AT(23,SS)SIZE(10)BEEP:CHR$(42+M) :: GOTO 670 1100 FOR I=0 TO N-1 :: PRINT B(I):: NEXT I 1110 IF ZAEHLER=0 THEN ZAEHLER=1 ELSE ZAEHLER=0 1120 Z1=ZAEHLER 1130 CALL KEY(5,RET,STATUS):: IF STATUS<>0 THEN CALL HCHAR(21,1,32,120):: GOTO 440 1140 DISPLAY AT(24,1):"TASTE DRUECKEN !" :: GOTO 1130 Edited April 20, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
Asmusr Posted April 20, 2019 Share Posted April 20, 2019 How do I change the title of this tread? to "Programme fuer den TI-99/4A und TI-99/4" Edit the first post (use full editor). Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 Edit the first post (use full editor). Thx Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 20, 2019 Share Posted April 20, 2019 WURF NACH OSEN ... Better? Should read "WURF NACH OBEN" (throwing upward). Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) 7.3 Space Krieg (Ext. BASIC) Works! I think??? 10 A=30 :: B=-20 20 CALL CLEAR 30 REM ZEICHENDEFINITION************* 40 S3$="01042000684402010102446800244000C0460084808CAEC6C0A6908194044010" 50 S4$="000000070F0F0F1F3F3F7F1F1D111000000040F0F0FCFCFEFEFFFFFCFCF07000" 60 S5$="0303070E0C0CFEFEFEFE0C0C0E070303F8FBF8787C7C3F1F1F3F7C7C78FBF8FB" 70 S6$="0000000000007FFFFF7F0000000000000000183870F0F6FEFEF6F07038180000" 80 S7$="07070F19313F3F7CF8C8C4E270301800E0E0F0988CFCFC3E1F1323470E0C1800" 90 S2$="0000FF00000000000000000000FF00000000E000000000000000000000E00000" 100 S1$="0007070F1F1FD1FBFBDF1F1F0F0707000000FC00B0E07E7F7FFEE08000FC0000" 110 S8$="000000FF00000FFFFF0F0000FF0000001C3C7CFC7CFDEFCFCFEFFD7CFC7C3C1C" 120 S9$="000000000020519D8E2F43448B0C00000000000000048AD169F4C22211300000" 130 CALL CHAR(60,S3$):: CALL CHAR(104,S8$):: CALL CHAR(100,S4$):: CALL CHAR(108,S5$):: CALL CHAR(112,S6$):: CALL CHAR(116,S7$) 140 CALL CHAR(120,S9$) 150 CALL CHAR(96,S2$) 160 CALL CHAR(92,S1$) 170 CALL SPRITE(#4,100,2,170,25,10,-25) 180 CALL COLOR(2,11,1) 190 CALL MAGNIFY(3) 200 REM EINLEITUNG********** 210 CALL CLEAR :: CALL SCREEN(10) 220 DISPLAY AT(1,6):"*****************" :: DISPLAY AT(2,6):"*TI SPACE SATTLE*" :: DISPLAY AT(3,6):"*****************" 230 DISPLAY AT(4,7):"BY R.HEIGENMOSER" 240 DISPLAY AT(6,2):"SCORE:" 250 DISPLAY AT(8,2):"hJ" :: DISPLAY AT(S,2):"ik 100 PUNKTE" 260 DISPLAY AT(11,2):"ln" :: DISPLAY AT(12,2):"mo 150 PUNKTE" 270 DISPLAY AT(14,2):"df'" :: DISPLAY AT(15,2):"es 10 PUNKTE" 280 DISPLAY AT(17,2):"tv" :: DISPLAY AT(18,2):"uw SO PUNKTE" 290 DISPLAY AT(20,2):"xz" :: DISPLAY AT(21,2):"y< 100 PUNKTE" 300 DISPLAY AT(24,2):"TASTE DRUECKEN" :: CALL KEY(0,KEY,STA):: IF STA=0 THEN 300 310 CALL CHAR(92,S1$) 320 REM UMGEBUNG ERSTELLEN************ 330 CALL SCREEN(6):: CALL CLEAR :: DISPLAY AT(1,7):"SCORE:" :: DISPLAY AT(1,14):SCORE 340 FOR I=1 TO 30 :: DISPLAY AT(RND*24+1,RND*28+1)SIZE(1):"." :: NEXT I 350 HIGH=500 :: PA=104 :: PA1=96 :: CO1=11 :: CO2=15 :: SC1=100 :: SC2=10 360 CALL PATTERN(#4,100):: CALL COLOR(#4,2) 370 REM HAUPTPROGRAMM******** 380 DISPLAY AT(23,1):"\^\^\^\^" :: DISPLAY AT(24,1):"J_J_J_J_" :: FOR K=0 TO 3 390 DISPLAY AT(23,2*K+1)SIZE(2):" " :: DISPLAY AT(24,2*K+1)SIZE(2):" " 400 ZAE=0 :: A=-30+INT(RND*60):: B=-20+INT(RND*40):: CALL SPRITE(#1,92,16,70,30,0,0) 410 CALL SPRITE(#8,PA,CO1,1,230) 420 CALL JOYST(2,XPOS,YPOS) 430 CALL MOTION(#1,-YPOS*15,XPOS*10) 440 REM BEWEGUNG GEGNER******** 450 CALL MOTION(#8,A,B) 460 REM SCHUSSABFRAGE********* 470 CALL KEY(2,TAS,STATUS):: IF TAS=18 THEN 480 ELSE 540 480 REM SCHUSS******** 490 CALL SOUND(150,-7,0) 500 CALL POSITION(#1,X,Y):: CALL SPRITE(#2,96,2,X,Y,0,127) 510 CALL POSITION(#2,X1,X2) 520 IF X2<200 THEN 530 ELSE CALL DELSPRITE(#2) :: GOTO 540 530 CALL COINC(#2,#8,25,CO):: CALL COINC(#2,#4,20,C24):: IF CO=0 AND C24=0 THEN 510 ELSE 770 540 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#1,-YPOS*15,XPOS*10) 550 REM BEWEGUNG METEORIT******* 560 CALL MOTION(#4,-30+INT(RND*60),-20+INT(RND*40)) 570 REM COLLISION SCHIFF-GEGNER?************* 580 CALL COINC(#1,#8,20,C18):: IF C18=-1 THEN 730 590 REM COLL.SCHIFF-METE.?********* 600 CALL COINC(#1,#4,20,C14):: IF C14=-1 THEN 730 610 A=0 :: B=0 620 REM BEWEG.GEGNER******** 630 IF ZAE=2 THEN A=-50+INT(RND*100):: B=-40+INT(RND*80):: ZAE=0 :: GOTO 420 640 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#1,-YPOS*15,XPOS*10) 650 IF INT(RND*2)=1 THEN 670 ELSE 420 660 REM SCHUSS GEGNER****** 670 CALL POSITION(#8,X8,Y8):: CALL SPRITE(#9,PA1,CO2,X8,Y8,0,-127) 680 CALL SOUND(150,-5,0) 690 CALL POSITION(#9,X9,Y9):: IF Y9>55 THEN 700 ELSE CALL DELSPRITE(#9):: ZAE=ZAE+1 :: GOTO 420 700 CALL COINC(#1,#9,25,CO):: IF C0=-1 THEN 730 710 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#1,-YPOS*15,XPOS*10):: GOTO 690 720 REM SCHIFF GETROFFEN************* 730 CALL DELSPRITE(#9):: CALL PATTERN(#1,60):: IF C18=0 THEN 740 ELSE CALL PATTERN(#8,60) 740 CALL MOTION(#1,0,0):: CALL MOTION(#8,0,0):: FOR I=0 TO 30 :: CALL SOUND(50,-6,I):: NEXT I 750 NEXT K :: GOTO 900 760 REM GEGNER GETROFFEN******* 770 CALL DELSPRITE(#2):: IF C24=-1 THEN 830 ELSE CALL PATTERN(#8,60) 780 CALL MOTION(#1,0,0):: CALL MOTION(#8,0,0):: FOR I=0 TO 30 :: CALL SOUND(100,-7,I):: NEXT I :: SCORE=SCORE+SC1 790 IF SCORE>=HIGH THEN GOSUB 970 800 DISPLAY AT(1,14):SCORE :: IF SCORE<200 THEN PA=104 ELSE PA=108 :: PA1=112 :: C01=10 :: CO2=7 :: SC1=150 810 GOTO 400 820 REM METEORIT GETROFFEN********* 830 CALL PATTERN(#4,60):: FOR I=0 TO 30 :: CALL SOUND(50,-3,I):: NEXT I :: SCORE=SCORE+SC2 :: CALL PATTERN(#4,100):: DISPLAY AT(1,14):SCORE 840 IF SCORE>=HIGH THEN GOSUB 970 850 IF SCORE>600 AND SC2=50 THEN CALL PATTERN(#4,120):: SC2=100 :: CALL COLOR(#4,2):: GOTO 420 860 IF SCORE>300 THEN CALL PATTERN(#4,11B):: SC2=50 :: CALL COLOR(#4, 870 GOTO 420 880 GOTO 420 890 REM ENDE******* 900 CALL CLEAR :: CALL SCREEN(11) 910 DISPLAY AT(10,B):"NOCHMAL J ODER N" 920 HSC=MAX(HSC,SCORE):: DISPLAY AT(15,6):"HIGHSCORE:";HSC :: SCORE=0 930 CALL KEY(O,KEY,STA):: IF STA=0 THEN 930 940 IF KEY=106 THEN 330 ELSE END 950 END 960 REM BONUS********* 970 DISPLAY AT(23,2*K+1)SIZE(2):"\^" :: DISPLAY AT(24,2*K+1)SIZE(2):"]_" :: K=K-1 :: HIGH=HIGH+2000 :: RETURN Edited April 21, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 7.2 Memory (Tl-BASIC) FOR-NEXT NESTING IN 1670It should NOT be GOSUB... As fare as I can see, all FOR NEXT er closed... or??? 10 OPTION BASE 1 20 DIM A(16),B(16),C1(16),C2(16),D(16),MX(,MY( 30 FOR C=1 TO 8 40 READ MX(C),MY(C) 50 NEXT C 60 DATA 7,26,10,26,13,26,16,26,7,29,10,29,13,29,16,29 70 FOR C=1 TO 16 80 READ C1(C),C2(C),D(C) 90 NEXT C 100 DATA 3,5,40,3,10,41,3,15,40,3,20,41,8,5,41,8,10,40,8,15,41,8,20,40 110 DATA 13,5,40,13,10,41,13,15,40,13,20,41,18,5,41,18,10,40,18,15,41,18,20,40 120 CALL CLEAR 130 CALL CHAR(64,"3C4299A1A199423C") 140 PRINT TAB(12):"MEMORY": : : : : : 150 DEF R=INT(RND*200+900) 160 DEF R15=INT(RND*15)+2 170 FOR C=96 TO 159 180 CALL SOUND(50,R,4) 190 READ C$ 200 CALL CHAR(C,C$) 210 NEXT C 220 DATA "",,FFFFFFFFFFFFFFFF,,,,,,0000000000003CFF,0101030303030101,FFFFFFFFFFFFFFFF,8080C0C0C0C0808,,FF3C,,"" 230 DATA 0000000008081C1C,0000000000000101,3E3E7F7FFFFFFFFF,000000008080C0C,03030707,FFFFFFFF,E0E0F0F,, 240 DATA "",0F0F0F0F0F0F0F0F,FFFFFFFFFFFFFFFF,F0F0F0F0F0F0F0F0,,,,,0000000010387CFE,0103070F070301 250 DATA FFFFFFFFFFFFFFFF,0080C0E0C08,,7C381,,,000000001010383C,001F070100010103,7CFFFFFFFEFFEFC7 260 DATA 00Fot:0000000008,030706,8301,B0C0C,,0000000000003C7E,00010303030301,FFE7C38181C3E7FF,00B0C0C0C0C08,"" 270 DATA 7E3C,,,000000003C3C3C3C,00000F0F0F0F,3C3CFFFFFFFF3C3C,0000F0F0F0F,,3C3C3C3C,,"" 280 CALL CLEAR 290 PRINT "DRUECKE 2 BUCHSTABEN.": :"VERSUCHE, DIE BILDER ZUERRATEN.": :"JEBESSER DU BIST,DESTO": 300 PRINT :"GERINGER DEINE PUNKTZAHL.": : : 11 DRUECKE 'S' UM DIE BILDER AUFZUDECKEN." 310 CALL CHAR(40,"FFFFFFFFFFFFFFFF") 320 CALL CHAR(41,"0") 330 PRINT: : : "DRUECKE EINE TASTE": 340 CALL KEY(0,K,S) 350 IF S<1 THEN 340 360 CALL CLEAR 370 SC=0 141 380 M=0 390 CALL COLOR(2,5,9) 400 PRINT "( ( ( ( ( ) ) ) ) ( ( ( ( ( ) ) ) ) )":"( ( ( ( () ) ) ) ) ( ( ( ( ( ) ) ) ) )":"( (A( ( ) )B) ) ( (C( ( ) )D) )":"( ( ( ( ( ) ) ) ) ) ( ( { ( ( ) ) ) ) )" 410 PRINT "( ( ( ( ( ) ) ) ) ) ( ( ( ( ( ) ) ) )":") ) ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( ( (":") ) ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( ( (":") )E) ) ( (F( ( ) )G) ) ( (H( (" 420 PRINT ") ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( (":") ) ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( ( (":"( ( ( ( ( ) ) ) ) )( ( ( ( ( ) ) ) ) )":"( ( ( ) ) ) ) ) ( ( ( ( ( ) ) )" 430 PRINT "( (I( ( ) )J) ) ( (K( ( ) )L) )":"( ( ( ( ( ) ) ) ) ) ( ( ( ( ( ) ) ) ) )":"( ( ( ( ( ) ) ) ) ) ( ( ( ( ( ) ) ) ) )":") ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( (" 440 PRINT ") ) ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( ( (":") )M) ) ( (N( ( ) )O) ) ( (P( (":") ) ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( ( (":") ) ) ) ( ( ( ( ( ) ) ) ) ) ( ( ( (" 450 FOR C=1 TO 8 460 B(C)=C 470 B(C+=C 480 NEXT C 490 PRINT : "S=AUFDECKEN 11 :TAB(18); "PUNKTE=" 500 FOR C=1 TO 16 510 RANDOMIZE 520 RC=INT(16*RND)+1 530 IF B(RC)=0 THEN 520 540 A(C)=B(RC) 550 B(RC)=0 560 NEXT C 570 FOR C=1 TO 16 580 B(C)=A(C) 590 NEXT C 600 M=0 610 FOR C=1 TO 8 620 F(C)=R15 630 F2(C)=R15 640 IF F2(C)=F(C) THEN 630 650 CALL COLOR(C+8,F(C),FZ(C)) 680 NEXT C 670 FOR C=1 TO 6 680 CALL HCHAR(2,23+C,ASC(SEG$("MEMORY",C,l))) 690 NEXT C 700 SC=SC+1 710 S$=STRS(SC) 720 FOR C=1 TO LEN(S$) 730 CALL HCHAR(23,27+C,ASC(SEG$(S$,C,1))) 740 NEXT C 750 CALL SOUND(150,1397,2) 760 CALL HCHAR(4,2S,63) 770 CALL KEY(0,K,S) 780 IF K=83 THEN 1560 790 IF (K<65)+(K>80) THEN 770 800 CALL HCHAR(4,26,K) 810 N=K-64 820 A1=N 830 X=C1(N) 840 Y=C2(N) 850 IF A(N)<>0 THEN 900 860 CALL HCHAR(X,Y-1,92,3) 870 CALL HCHAR(X+l,Y-1,92,3) 880 CALL HCHAR(X+2,Y-1,92,3) 890 GOTO 910 900 GOSUB 1380 910 CALL SOUND(150,1397,2) 920 CALL HCHAR(4,29,63) 930 CALL KEY(0,K,S) 940 IF K=83 THEN 1560 950 IF (K<65)+(K>80) THEN 930 960 CALL HCHAR(4,29,K) 970 N=K-64 980 A2=N 990 X=C1(N) 1000 Y=C2(N) 1010 IF A(N)<>0 THEN 1060 1020 CALL HCHAR(X,Y-1,92,3) 1030 CALL HCHAR(X+1,Y-1,92,3) 1040 CALL HCHAR(X+2,Y-1,92,3) 1050 GOTO 1070 1060 GOSUB 1380 1070 IF A(Al)=0 THEN 1100 1080 IF A(A2)=0 THEN 1100 1090 IF A(A1)=A(A2) THEN 1130 1100 CALL SOUND(150,330,2) 1110 CALL SOUND(150,262,2) 1120 GOTO 1240 1130 M=M+1 1140 X=MX(M) 1150 Y=MY(M) 1160 CALL SOUND(150,262,2) 1170 CALL SOUND(150,330,2) 1180 CALL SOUND(150,392,2) 1190 CALL SOUND(300,523,2) 1200 GOSUB 1400 1210 A(Al)=0 1220 A(A2)=0 1230 IF M=8 THEN 1500 1240 X=C1(A2) 1250 Y=C2(A2) 1280 CALL HCHAR(X,Y-1,D(N),3) 1270 CALL HCHAR(X+l,Y-1,D(N),3) 1280 CALL HCHAR(X+2,Y-1,D(N),3) 1290 CALL HCHAR(X+l,Y,N+64) 1300 X=C1(A1) 1310 Y=C2(A1) 1320 CALL HCHAR(X,Y-1,D(A1),3) 1330 CALL HCHAR(X+l,Y-1,D(Al),3) 1340 CALL HCHAR(X+2,Y-1,D(A1),3) 1350 CALL HCHAR(X+l,Y,A1+64) 1360 CALL HCHAR(4,26,32,4) 1370 GOTO 700 1380 CH=8*(B(N)-1)+96 1390 CALL SOUND(150,-1,2) 1400 CALL HCHAR(X,Y-1,CH+7) 14!0 CALL HCHAR(X,Y,CH) 1420 CALL HCHAR(X,Y+1,CH+7) 1430 CALL HCHAR(X+l,Y-1,CH+l) 1440 CALL HCHAR(X+l,Y,CH+2) 1450 CALL HCHAR(X+l,Y+l,CH+3) 1460 CALL HCHAR(X+2,Y-1,CH+4) 1470 CALL HCHAR(X+2,Y,CH+5) 1480 CALL HCHAR(X+2,Y+l,CH+6) 1490 RETURN 1500 RESTORE 1510 1510 DATA 262,330,392,523,330,392,523,659,392,523,659,784,523,659,784,1046,1046 1520 FOR C=1 TO 17 1530 READ J 1540 CALL SOUND(-99,J,2) 1550 NEXT C 1560 CALL HCHAR(4,26,32,4) 1570 FOR N=1 TO 16 1580 X=C1(N) 1590 Y=C2(N) 1600 GOSUB 1380 1610 NEXT N 1620 PRINT "NOCHMAL? [J N]": 1630 CALL KEY(0,K,S) 1540 IF K=78 THEN 1660 1650 IF K=74 THEN 360 ELSE 1630 1660 CALL CLEAR 1670 END Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 20, 2019 Author Share Posted April 20, 2019 (edited) After looking at it here, better overview, I think I found all bugs!Can someone with joystick try and see if it works?(Is it possible to play with keyboard on Classic99?) 10 CALL CLEAR :: CALL SCREEN(11) 20 FAR(1)=2 :: FAR(2)=11 :: FAR(3)=16 :: FAR(4)=11 :: FAR(5)=11 :: DIM ABG(11) 30 REM SPRITES,ZEICHEN INITIALISIEREN**************** 40 S1$="0103070103070F0F1B070F1F070F3FFF0080C0E0C0E0F0C0E0F8E8F0F8FCF8FE" 50 CALL CHAR(88,S1$):: CALL COLOR(8,13,16) 60 S3$="010701030D010719231D6103053943010080C0A0C0B080E09CC0B08CC2B08E80" 70 CALL CHAR(40,S3$):: CALL COLOR(2,2,1):: CALL COLOR(2,2,16) 80 S2$="010101010101010180808080808080800000000000000000" 90 CALL CHAR(128,S2$):: CALL COLOR(13,2,16) 100 S4$="FFFFFFFFFFFFFFFF" :: CALL CHAR(96,S4$):: CALL COLOR(9,4,1) 110 S5$="606060706864626161626468706060600606080E16264686864626160E060606" :: CALL CHAR(44,S5$) 120 S6$="004020100907070FFF070709102040008082848890E0E0F0FFE0E09088848280" :: CALL CHAR(92,S6$) 130 S7$="FFFFFFFF1F1F1F1F1F1F1F1F1F1F1F1FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" :: CALL CHAR(100,S7$) 140 S8$="0003073F7F7FFFFFFFFF7F1F0301000000C0F0F0F8FEFEFEFCF8FEFEDCC00000" :: CALL CHAR(104,S8$) 150 S9$="00000000000001000000040506070000040810204080F8102040800000800000" :: CALL CHAR(108,S9$) 160 S10$="0141841410044555511404A4A0B8090904444141012928080044454511141400" :: CALL CHAR(112,S10$) 170 S11$="00FFFFFFFFFF04041F7FF1FBFB7F3F0000FFFFFFFFFF2020A0FC7F7F7FFC8000" :: CALL CHAR(116,S11$) 180 S12$="00000000061F7FFF081C3C7EFEFFFFFF00000207CFDFFFFF00000008DCFFFFFF" :: CALL CHAR(120,S12$):: CALL COLOR(12,16, 190 S13$="0000000001038BFF080C1E1E9EBFBFFF00000B0C1F3FFFFF00000000848CCEFF" :: CALL CHAR(124,S13$) 200 S14$="00000000000000FFFF007FF0FBFBF07F00000000000000FFFF00FE0F1F1F0FFE" :: CALL CHAR(132,S14$) 210 S15$="01042000684402010102446800244000C0460084808CAEC6C0A6908194044010" :: CALL CHAR(36,S15$) 220 S16$="000000000000000000010F3F3F7F7FFF00000000000000003FFFFFFFFFFFFFFF" :: CALL CHAR(136,S16$) 230 S17$="FF7F7F3F3F0F01000000000000000000FFFFFFFFFFFFFF3F0000000000000000" :: CALL CHAR(140,S17$) 240 REM EINLEITUNG 250 DISPLAY AT(2,10):"RAIN GAME" :: DISPLAY AT(3,10):"=========" :: DISPLAY AT(1, 10): "=========" 260 DISPLAY AT(5,S):"VON R HEIGENMOSER" 270 DISPLAY AT(B,2):"t v" :: DISPLAY AT(S,2):"u w =ABFAENGER" 280 DISPLAY AT(11,2):"h j" :: DISPLAY AT(12,2):"i k" 290 DISPLAY AT(14,2):"WEISS =DURCHLASSEN" 300 DISPLAY AT(16,2):"GELB =ABFANGEN" :: DISPLAY AT( 18,2): "DUNKEL =VORSICHT!!" 310 DISPLAY AT(24,2):"TASTE DRUECKEN!" 320 CALL KEY(0,K,STA):: IF STA=0 THEN 320 330 REM LANDSCHAFT,SPRITES SETZEN*********** 340 CALL CLEAR :: CALL SCREEN(:: FOR I=1 TO 4 350 DISPLAY AT(19,8*I-7):"xyz{":CHR$(124):CHR$(125):CHR$(126):CHR$(127):: NEXT I 360 CALL HCHAR(20,1,130,128) 370 CALL HCHAR(24,1,96,32) 380 FOR I=1 TO 11 390 DISPLAY AT(21,2*I)SIZE(2):"XZ" :: DISPLAY AT(22,2*I)SIZE(2):"YC" 400 DISPLAY AT(23,2*I)SIZE(2):CHR$(128):CHR$(129) 410 NEXT I 420 DISPLAY AT(20,26)SIZE(2):",." :: DISPLAY AT(21,26)SIZE(2):"-/" :: DISPLAY AT(22,26)SIZE(2):",." :: DISPLAY AT(23,26)SIZE(2):"-/" 430 CALL MAGNIFY(3):: SP=S :: FA=3 :: SCO1=0 :: SCO2=11 :: BONUS=200 :: SCO3=0 :: BO1=50 440 FOR I=1 TO 11 :: ABG(I)=0 :: NEXT I 450 CALL SPRITE(#9,92,12,20,1,0,1) 460 CALL SPRITE(#1,100,5,137,217,0,0) 470 CALL SPRITE(#2,116,7,50,1,0,0) 480 CALL SPRITE(#7,136,5,129,205,0,0) 490 CALL SPRITE(#8,140,5,145,205,0,0) 500 DISPLAY AT(1,2):"tvtvtv PUNKTE:" :: DISPLAY AT(2,2):"uwuwuw FUELLUNG:" 510 REM HAUPTPROGRAMM********* 520 FOR DUR=1 TO 4 530 CALL DELSPRITE(#3) 540 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 550 DISPLAY AT(1,20):SCO3 :: DISPLAY AT(2,20):SCO1 560 IF SCO1=5 THEN 850 570 RO3=INT(RND*120+10) 580 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 590 STO=INT(RND*160)+25 600 NEG=-2+INT(RND*5):: IF NEG=0 THEN NEG=3 610 REM WOLKE************ 620 CALL SPRITE(#3,104,16,RO3,1,0,NEG* 630 CALL COINC(#3,RO3,STO,5,CO3):: IF CO3=-1 THEN 670 640 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 650 GOTO 630 660 REM STANDPUNKT ERREICHT********** 670 CALL MOTION(#3,0,0):: FA=INT(RND*5)+1 :: CALL COLOR(#3,FAR(FA)):: ON FA GOTO 690,790,870,790,790 680 REM SCHWARZ********** 690 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 700 IF FLA>1 THEN FLA=0 :: GOTO 530 710 IF INT(RND*3)<>1 THEN 690 :: FLA=FLA+1 720 SSP=INT(RND*-100)+50 730 CALL SOUND(100,-6,0) 740 CALL SPRITE(#4,108,16,RO3,STO,90,SSP) 750 CALL COINC(#2,#4,20,CO24):: IF CO24=-1 ·THEN 1080 760 CALL POSITION(#4,POSY,POSX):: IF POSY>150 THEN CALL DELSPRITE(#4):: GOTO 700 770 GOTO 750 780 REM GELB************* 790 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP) 800 CALL SOUND(200,1400,0,RO3*15,0,STO*10,0,-4,0) 810 CALL SPRITE(#5,112,14,RO3,STO,20,0) 820 CALL COINC(#2,#5,7,CO25):: IF CO25=-1 THEN CALL DELSPRITE(#5):: SCO1=SCO1+1:: GOTO 1230 830 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP) 840 CALL POSITION(#5,POSY,POSX):: IF POSY>160 THEN 1160 850 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPDS*SP,XPOS*SP):: GOTO 820 860 REM WEISS************ 870 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 880 CALL SOUND(300,-1,0) 890 CALL SPRITE(#5,112,5,RO3,STO,20,0) 900 CALL COINC(#2,#5,10,CO25):: IF CO25=-1 THEN CALL DELSPRITE(#5):: GOTO 1150 910 CALL POSITION(#5,POSY,POSX):: IF POSY>150 THEN CALL DELSPRITE(#5):: GOTO 530 920 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP):: CALL POSITION(#2,POSY,POSX):: IF POSY>160 OR POSY<10 THEN 1080 930 GOTO 900 940 REM BEHAELTER OEFFNEN*********** 950 CALL MOTION(#7,-1,0):: CALL MOTION(#8,1,0) 960 CALL COINC(#7,121,205,1,CO7):: IF CO7=-1 THEN CALL MOTION(#7,0,0):: CALL MOTION(#8,0,0):: CALL LOCATE(#7,121,205):: CALL LOCATE(#8,153,205):·: GOTO 990 970 CALL SOUND(-50,1400,0) 980 GOTO 960 990 SP=l 1000 REM ANDOCKEN*********** 1010 CALL JOYST(2,XPOS,YPOS):: CALL MOTION(#2,-YPOS*SP,XPOS*SP) 1020 CALL COINCCALL,COAL):: IF COAL=-1 THEN 1040 1030 GOTO 1010 1040 CALL MOTION(#2,0,0):: SP=6 :: CALL POSITION(#2,POSY,POSX):: IF POSY<>137 THEN CLO=1 :: GOTO 1080 1050 SCO3=SCO3+BO1 :: SCO1=0 :: IF SCO3>=BONUS THEN GOSUB 1370 1060 CALL LOCATE(#2,137,180):: GOSUB 1310 :: GOSUB 1250 :: GOTO 540 1070 REM ZERSCHELLT********** 1080 SCO1=0 :: CALL DELSPRITE(#4):: CALL MOTION(#2,0,0):: CALL PATTERN(#2,36) 1090 FOR I=0 TO 30 :: CALL SOUND(50,-6,I):: NEXT I 1100 DISPLAY AT(1,2*DUR)SIZE(2):" " :: DISPLAY AT(2,2*DUR)SIZE(2):" " 1110 CALL DELSPRITE(#2):: IF CLO=1 THEN CLO=0 :: GOSUB 1250 1120 CALL SPRITE(#2,116,7,70,10,0,0) 1130 NEXT DUR 1140 GOTO 1590 1150 REM BAUM ABGESTORBEN************ 1160 CALL DELSPRITE(#5):: VERN=-INT(-(STO-8)/8):: IF VERN/2-INT(VERN/2)<>0 THEN VERN=VERN-1 1170 DISPLAY AT(21,VERN)SIZE(2):"C*" :: DISPLAY AT(22,VERN)SIZE(2):">+" 1180 IF ABG(VERN/2)=0 THEN SCD2=SCO2-1 1190 ABG(VERN/2)=1 1200 CALL SOUND(500,110,0) 1210 IF SCO2=0 THEN 1590 ELSE 530 1220 REM SOUND FUER AUFGEFANGEN************ 1230 CALL SOUND(200,440,0):: CALL SOUND(200,880,0):: CALL SOUND(200,1760,0):: GOTO 530 1240 REM BEHAELTER SCHLIESSEN************ 1250 CALL MOTION(#7,1,0):: CALL MOTION(#8,-1,0) 1260 CALL COINC(#7,130,205,1,CO7):: IF CO7=-1 THEN CALL MOTION(#7,0,0):: CALL MOTION(#S,0,0):: CALL LOCATE(#8,145,205):: GOTO 1290 1270 CALL SOUND(-50,1600,0) 1280 GOTO 1260 1290 RETURN 1300 REM BAUM ERNEUERN********* 1310 CALL SOUND(200,440,0):: CALL SOUND(200,880,0):: CALL SOUND(200,1760,0) 1320 FOR I=1 TO 11 1330 IF ABG(I)=l THEN DISPLAY AT(21,2*I)SIZE(2):"XZ" :: DISPLAY AT(22,2*I)SIZE(2):"YC" :: ABG(I)=0 :: SCO2=SCO2+1 :: GOTO 1350 1340 NEXT I :: SCO3=SCO3+B01 1350 RETURN 1360 REM BONUS*********** 1370 DISPLAY AT(15,20):"BONUS" :: CALL SPRITE(#6,132,2,169,1,0,5) 1380 CALL COINC(#S,169,217,3,CO6):: IF CO6=-1 THEN CALL MOTION(#S,0,0):: GOTO 1410 1390 CALL SOUND(50,110,10) 1400 GOTO 1380 1410 CALL MOTION(#1,1,0) 1420 CALL COINC(#1,#6,8,CO16):: IF CO16=-1 THEN CALL MOTION(#l,0,0):: GOTO 1450 1430 CALL SOUND(50,-3,0) 1440 GOTO 1420 1450 CALL MOTION(#S,0,5):: CALL MOTION(#1,0,5) 1460 FOR I=1 TO 200 :: NEXT I 1470 CALL COINC(#S,169,217,3,CO6):: IF CO6=-1 THEN CALL MOTION(#6,0,0):: CALL MOTION(#1,0,0):: GOTO 1500 1480 CALL SOUND(50,140,10) 1490 GOTO 1470 1500 CALL MOTION(#l,-1,0) 1510 CALL COINC(#1,137,217,3,CO1):: IF CO1=-1 THEN 1540 1520 CALL SOUND(S0,1000,0) 1530 GOTO 1510 1540 CALL MOTION(#1,0,0):: CALL LOCATE(#1,137,217) 1550 DISPLAY AT(15,20):" " 1560 BONUS=BONUS+4*B01 :: B01=B01+20 :: CALL DELSPRITE(#6):: IF DUR<2 THEN SCO3=SCO3+100 :: RETURN 1570 DUR=DUR-1 :: DISPLAY AT(1,2*DUR)SIZE(2):"tv" :: DISPLAY AT(2,2*DUR)SIZE(2):"uw" :: RETURN 1580 REM ENDE********** 1590 CALL CLEAR :: CALL SCREEN(1S):: DISPLAY AT(12,4):"NOCHMAL? J ODER N" 1600 HIGH=MAX(HIGH,SCO3):: DISPLAY AT(15,5):"HIGHSCORE:":HIGH 1610 CALL KEY(0,K,STA):: IF STA=0 THEN 1610 1620 IF K=106 THEN 340 1630 END Edited April 21, 2019 by oddemann Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 20, 2019 Share Posted April 20, 2019 (edited) Line 180 seems to be clipped. Here is SPACEKRIEG and RAINGAME. I found them on my disks. exgames.dsk Edited April 20, 2019 by mizapf 1 Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 21, 2019 Author Share Posted April 21, 2019 6.2 Quadratische Gleichung 10 CALL CLEAR 20 CALL SCREEN(15) 30 PRINT TAB(4);"QUADRATISCHE GLEICHUNG": : : : : : : : : : 40 PRINT "TASTE DRUECKEN" 50 CALL KEY(0,K,S) 60 IF S=0 THEN 50 70 CALL CLEAR 80 PRINT "GLEICHUNG HAT DIE FORM:" 90 PRINT 100 PRINT "A*X^2+B*X+C=0": : : : 110 PRINT "BITTE VARIABLEN A,B,C EIN GEBEN": : 120 INPUT "A,B,C ":A,B,C 130 CALL CLEAR 140 WUR=B^2-4*A*C 150 IF WUR<0 THEN 290 160 PRINT "WURZELN SIND REEL": : : 170 X1=(-B+SQR(WUR))/2*A 180 X2=(-B-SQR(WUR))/2*A 190 PRINT "X1= ";X1 200 PRINT 210 PRINT "X2= ";X2 220 PRINT: : : : 230 PRINT "NOCH EIN DURCHLAUF? (J/N)" 240 CALL KEY(0,K,S) 250 IF S=0 THEN 240 260 IF K=74 THEN 70 270 CALL CLEAR 280 STOP 290 PRINT "WURZELN SIND KOMPLEX" : : : : : : : 300 RE=-B/2*A 310 IM=SQR(-WUR)/2*A 320 PRINT "X1= ";RE;"+";IM;"I" 330 PRINT 340 PRINT "X2= ";RE;"-";IM;"I": : : 350 PRINT "REALTEIL =";RE 360 PRINT 370 PRINT "IMAGINAERTEIL =";IM 380 PRINT 390 GOTO 230 Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 21, 2019 Author Share Posted April 21, 2019 Line 180 seems to be clipped. Here is SPACEKRIEG and RAINGAME. I found them on my disks. 180, what file??? Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted April 21, 2019 Share Posted April 21, 2019 ... (Is it possible to play with keyboard on Classic99?) Yes. For details, see §5.2 “Joystick” in the Classic99 Manual: From the menu, select “Options-->Options...”, then mark ”Enable Joysticks” and click each joystick you want to control through the PC keyboard. The arrow keys are the directional keys and Tab is the Fire button. ...lee Quote Link to comment Share on other sites More sharing options...
oddemann Posted April 21, 2019 Author Share Posted April 21, 2019 Yes. For details, see §5.2 “Joystick” in the Classic99 Manual: From the menu, select “Options-->Options...”, then mark ”Enable Joysticks” and click each joystick you want to control through the PC keyboard. The arrow keys are the directional keys and Tab is the Fire button. ...lee Thx, I looked in the manual and made 1 and 2 a keyboard joystick. Maybe that made it work. Now it works 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.