Jump to content

Photo

"Programme fuer den TI-99/4A und TI-99/4"


28 replies to this topic

#1 oddemann OFFLINE  

oddemann

    Star Raider

  • 95 posts

Posted Sat Apr 20, 2019 6:20 AM

http://www.ti99iuc.i...ac#.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 by oddemann, Sat Apr 20, 2019 7:13 PM.


#2 ti99iuc OFFLINE  

ti99iuc

    Stargunner

  • 1,665 posts
  • Location:Italy

Posted Sat Apr 20, 2019 6:52 AM

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 by ti99iuc, Sat Apr 20, 2019 7:04 AM.


#3 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 7:52 AM

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$(8)="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 by oddemann, Sat Apr 20, 2019 10:51 AM.


#4 ti99iuc OFFLINE  

ti99iuc

    Stargunner

  • 1,665 posts
  • Location:Italy

Posted Sat Apr 20, 2019 7:58 AM

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 by ti99iuc, Sat Apr 20, 2019 7:59 AM.


#5 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 8:13 AM

Working on it!

C=(
>=)
|=I
G=Q
Z=2

:P



#6 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 8:16 AM

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 by oddemann, Sat Apr 20, 2019 8:26 AM.


#7 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 8:21 AM

How do I change the title of this tread?

to "Programme fuer den TI-99/4A und TI-99/4"



#8 ti99iuc OFFLINE  

ti99iuc

    Stargunner

  • 1,665 posts
  • Location:Italy

Posted Sat Apr 20, 2019 8:23 AM

I suggest to use this 

 

Attached File  1.jpg   7.59KB   0 downloads

 

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.



#9 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 8:25 AM

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 by oddemann, Sat Apr 20, 2019 12:41 PM.


#10 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 8:30 AM

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


#11 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 9:01 AM

Geschütz - BEISPIELPROGRAMM

​Maybe 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 by oddemann, Sat Apr 20, 2019 9:22 AM.


#12 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 9:41 AM

Sortieralgorithmen

Almost correct sorting.. some mistake or I made a wrong "turn" :P
 

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


#13 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 10:00 AM

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


#14 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 11:48 AM

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,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$(8)="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,8):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 by oddemann, Sat Apr 20, 2019 12:40 PM.


#15 Asmusr OFFLINE  

Asmusr

    River Patroller

  • 3,146 posts
  • Location:Denmark

Posted Sat Apr 20, 2019 11:52 AM

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).



#16 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 11:58 AM

 

Edit the first post (use full editor).

Thx ;)



#17 mizapf OFFLINE  

mizapf

    River Patroller

  • 3,667 posts
  • Location:Germany

Posted Sat Apr 20, 2019 12:25 PM

WURF NACH OSEN

...

Better?

 

Should read "WURF NACH OBEN" (throwing upward).



#18 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 2:05 PM

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,8)
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 by oddemann, Sat Apr 20, 2019 6:44 PM.


#19 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 3:11 PM

7.2 Memory (Tl-BASIC)

 

FOR-NEXT NESTING IN 1670

It 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(8),MY(8)
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+8)=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


#20 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 5:02 PM

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,8)
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 by oddemann, Sun Apr 21, 2019 4:22 AM.


#21 mizapf OFFLINE  

mizapf

    River Patroller

  • 3,667 posts
  • Location:Germany

Posted Sat Apr 20, 2019 5:33 PM

Line 180 seems to be clipped.

 

Here is SPACEKRIEG and RAINGAME. I found them on my disks.

Attached Files


Edited by mizapf, Sat Apr 20, 2019 5:37 PM.


#22 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 6:06 PM

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


#23 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 6:19 PM

Line 180 seems to be clipped.

 

Here is SPACEKRIEG and RAINGAME. I found them on my disks.

180, what file???



#24 Lee Stewart OFFLINE  

Lee Stewart

    River Patroller

  • 3,991 posts
  • Location:Silver Run, Maryland

Posted Sat Apr 20, 2019 6:28 PM

...

(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



#25 oddemann OFFLINE  

oddemann

    Star Raider

  • Topic Starter
  • 95 posts

Posted Sat Apr 20, 2019 6:46 PM

 

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 ;)






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users