-
Posts
537 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Gallery
Events
Store
Posts posted by oddemann
-
-
"Here Lives/QUI VIVE"
This is the first of some program code that is missing on the web page.
Anyway, I looked at... "Here Lives/QUI VIVE" and I am stomped at 1700, I think most of the bugs are out.Anyone? looked at it so much that I am a little blind at the moment... Will try again later. But the 1700 bug got me confused.
Now with last bug fix by @Lee StewartBut it still stops at 1700 (for me)
Spoiler10 REM TI EXTENDED-QUI VIVE 20 CALL CLEAR 30 RANDOMIZE 40 DIM SF(41,4),SO(41) 50 DIM D(107,1),DF(15,8) 60 DIM CC(4,1),B(24),C(24) 70 GOTO 1870 80 REM compute points of df********** 90 GV=0 :: P1=0 :: P2=0 :: C1=0 :: C2=0 100 D1=B(DF(NF,0)):: D2=B(DF(NF,1)) 110 IF D1=1 OR 02=1 THEN P1=1 120 IF D1=10 OR 02=10 THEN C1=10 130 D1=B(DF(NF,2)):: D2=B(DF(NF,3)) 140 IF D1=1 OR 02=1 THEN P2=1 150 IF D1=10 OR D2=10 THEN C2=10 160 GV=B(DF(NF,4))+B(DF(NF,5))+B(DF(NF,6)) 170 P=GV+P1+P2+C1+C2 180 IF GV=30 AND(C1=0 OR C2=0)THEN P=P-10 190 IF GV=3 AND(P1=0 OR P2=0)THEN P=P-1 200 RETURN 210 REM initialize single figu~es (sf) 220 FOR I=0 TO 41 :: READ X$ 230 FOR J=1 TO 5 240 SF(I,J-1)=ASC(SEG$(X$,J,1))-65 250 NEXT J :: NEXT I :: RETURN 260 REM wings(AV<>)***** 270 DATA UQMSV,PLHNT,KGCIO 280 DATA AGMIE,FLRNJ,KQWSO 290 DATA AGMQU,BHNRV,CIOSW 300 DATA EIHSV,DHLRX,CGKQW 310 REM times(X)***** 320 DATA ACGKM,BDHLN,CEIMO 330 DATA FLHPR,GIMQS,HJNRT 340 DATA KMQUW,LNRVX,MOSWY 350 REM plus(+)***** 360 DATA BFGHL,CGHIM,DHIJN 370 DATA GKLMQ,HLMNR,IMNOS 380 DATA LPQRV,MQRSW,NRSTX 390 REM diagonals(\/) 400 DATA AGHSY,EIMQU 410 REM columns(I)***** 420 DATA AFKPU,BGLQV,CHMRW 430 DATA DINSX,EJOTY 440 REM rows(-)***** 450 DATA ABCDE,FGHIJ,KLMNO 460 DATA PQRST,UVWXY 470 REM initialize double figures (df) 480 FOR I=0 TO 107 STEP 12 :: READ X$ 490 FOR J=0 TO 11 :: FOR K=0 TO 1 500 L=2*J+K+1 :: D(I+J,K)=ASC(SEG$(X$,L,1))-49 510 NEXT K :: NEXT J :: NEXT I 520 RETURN 530 DATA 171:1A1C1E1M101P2>2@2B2J 540 DATA 393<3=3?3G474:4=4?4A4G40 550 DATA 4P5@5B5D5J696<6C6E6M7=7A 560 DATA 7C71707P8>8B8D8J9?9E9K:? 570 DATA :A:E:K:O:P;>;@;D;J<=<C<I 580 DATA =G=I=O>F>H>J?G?K?P@F@J@L 590 DATA AGAIAKANAOAPBHBJBNCICMCP 600 DATA DJDLDNEKEMEOFRFWGSGWHTHW 610 DATA IRIXJSJXKTKXLRLVMSHYNTNY 620 REM compute double figure fields•••••••••• 630 TC=4 :: TN=0 640 FOR I=0 TO 4 :: C(SF(D(DF1,0),I))=1 :: NEXT I 650 FOR I=0 T0 4 :: SF1=SF(D(DF1,1),I) 660 IF C(SF1)=1 THEN 680 670 DF(NF,TN)=SF1 :: TN=TN+1 :: GOTO 690 680 DF(NF,TC)=SF1 :: TC=TC+1 .. C(SF1)=0 690 NEXT I 700 FOR I=0 TO 4 :: SF1=SF(D(DF1,0),I) 710 IF C(SF1)=I THEN DF(NF,TN)=SF1 :: TN=TN+1 :: C(SF1)=0 720 NEXT I :: RETURN 730 REM 740 REM display board********** 750 PRINT " " 760 FOR I=0 TO 4 :: FOR J=0 TO 4 770 F=5*1+J 780 IF B(F)=0 THEN PRINT " "; 790 IF B(F)=1 THEN PRINT "P"; 800 IF B(F)=10 THEN PRINT "C"; 810 NEXT J :: PRINT 5-I :: NEXT I 820 PRINT 830 PRINT "ABCDE" 840 PRINT " " 850 RETURN 860 REM determine owner of sf's********** 870 OM=-1 :: WM=-1 880 FOR SF1=0 TO 41 890 P=B(SF(SF1,0))+B(SF(SF1,1))+B(SF(SF1,2))+B(SF(SF1,3))+B(SF(SF1,4)) 900 IF P=0 OR P=10 OR P=20 OR P=30 THEN SO(SF1)=10 :: GOTO 1000 910 IF P<>40 THEN 950 920 GOSUB 1010 930 GOSUB 1050 940 WM=1 :: SF1=41 :: GOTO 1000 950 IF P>20 OR P<3 OR P=11 OR P=12 THEN SO(SF1)=0 :: GOTO 1000 960 SO(SF1)=1 970 IF P=4 AND OM=-1 THEN GOSUB 1010 980 IF P=14 THEN GOSUB 1050 990 IF P=S THEN SF1=41 1000 NEXT SF1 :: RETURN 1010 REM determine obligatory move********** 1020 FOR I=0 TO 4 1030 IF B(SF(SF1,I))=0 THEN OM=SF(SF1,I) 1040 NEXT I :: RETURN 1050 REM determine pinned checker********** 1060 FOR I=0 TO 4 1070 IF B(SF(SF1,I))<>10 THEN 1110 1080 FOR J=0 TO CC1-1 1090 IF SF(SF1,I)=CC(J,0)THEN CC(J,1)=1 1100 NEXT J 1110 NEXT I 1120 RETURN 1130 REM determine interesting df's******** 1140 NC=0 :: NP=0 :: NF=0 1150 FOR I=0 TO 15 1160 DF(I,8)=-1 1170 DF(I,7)=0 1180 NEXT I 1190 FOR DF1=0 TO 107 1200 O1=SO(D(DF1,0)) :: 02=SO(D(DF1,1)) 1210 IF 01<>02 OR 01=0 OR 02=0 THEN 1330 1220 GOSUB 620 1230 GOSUB 80 1240 IF P=4 OR P=14 THEN DFINF,71=1 :: GOTO 1270 1250 IF 01=1 OR P<=DF(NF,8)THEN 1330 1260 DF(NF,7)=10 1270 DF(NF,S)=P 1280 NF=0 1290 FOR I=0 TO 15 1300 IF DF(I,8)>=DF(NF,8)THEN 1320 1310 IF DF(I,7)=0 OR DF(I,7)=10 THEN NF=I 1320 NEXT I 1330 NEXT DF1 1340 RETURN 1350 REM 1360 REM determine strategic value of move 1370 IF WM=1 THEN 1520 1380 MC=0 :: N2=0 1390 FOR NF=0 TO 1 1400 IF DF(NF,7)=0 THEN 1460 1410 GOSUB 80 1420 IF DF(NF,7)=1 THEN 1450 1430 IF P=MC THEN N2=N2+1 1440 IF P>MC THEN MC=P :: N2=1 1450 IF P=4 THEN NF=15 1460 NEXT NF 1470 IF PP=-1 THEN 1520 1480 IF P=4 THEN RETURN 1490 IF MC<MP THEN RETURN 1500 IF MC=MP AND N2<N1 THEN RETURN 1510 IF MC=MP AND N2=N1 AND RND<.5 THEN RETURN 1520 MP=MC :: N1=N2 1530 PP=CP :: PT=CT 1540 RETURN 1550 REM 1560 REM Player move******* 1570 IF PC<5 THEN 1610 1580 PRINT "WHICH CHECKER 00 YOU WANT TO MOVE" 1590 GOSUB 1690 :: PT=X 1600 IF B(PT)<>1 THEN PRINT "NOT POSSIBLE" :: GOTO 1580 1610 PRINT "WHERE DO YOU PUT YOUR CHECKER" 1620 GOSUB 1690 1: PP=X 1630 IF B(PP)<>0 THEN PRINT "NOT POSSIBLE" :: GOTO 1610 1640 IF PC=5 THEN B(PT)=0 1650 IF PC<5 THEN PC=PC+1 1660 B(PP)=1 1670 GOSUB 740 1680 RETURN 1690 REM input********** 1700 INPUT X$:: IF LEN(X$)<>2 THEN 1750 1710 L$=SEG$(X$,1,1):: D$=SEG$(X$,2,1) 1720 IF L$<"A" OR L$>"E" OR D$<"1" OR D$>"5" THEN 1750 1730 X=ASC(L$)-5*VAL(D$)-40 1740 RETURN 1750 PRINT "WRONG INPUT,TRY AGAIN" :: GOTO 1700 1760 REM computer move********** 1770 IF CC1<5 THEN PT=CC1 :: CC1=CC1+1 :: GOTO 1830 1780 PRINT "I TAKE ";CHR$(65+PT-INT(PT/5)*5);5-INT(PT/5) 1790 B(PT)=0 1800 FOR CI=0 TO 4 1810 IF CC(CI,0)=PT THEN PT=CI :: CI=4 1820 NEXT CI 1830 PRINT "I PUT IT AT ";CHR$(65+PP-INT(PP/5)*5);5-INT(PP/5) 1840 B(PP)=10 :: CC(PT,0)=PP 1850 GOSUB 740 1860 RETURN 1870 REM main program********** 1880 PRINT "PLEASE WAIT" 1890 GOSUB 210 1900 GOSUB 470 1910 CC1=0 :: PC=0 1920 PP=12 :: GOTO 2140 1930 FOR I=0 TO 4 :: CC(I,1)=0 :: NEXT I 1940 GOSUB 860 1950 IF P=5 THEN END 1960 IF WM=1 THEN 1960 1970 GOSUB 1130 1980 MP=0 :: N1=0 :: PP=-1 1990 BF=0 :: EF=24 2000 IF OM<>-1 THEN BF=OM :: EF=OM 2010 FOR CP=BF TO EF 2020 IF B(CP)<>0 THEN 2130 2040 B(CP)=10 2050 IF CC1<5 THEN GOSUB 1360 :: GOTO 2120 2060 FOR CI=0 TO 4 2070 IF CC(CI,1) THEN 2110 2080 CT=CC(CI,0) :: B(CT)=0 2090 GOSUB 1360 2100 B(CT)=10 2110 NEXT CI 2120 B(CP)=0 2130 NEXT CP 2140 GOSUB 1760 2150 IF WM=1 THEN END 2160 GOSUB 1560 2170 PRINT "PLEASE WAIT" 2180 GOTO 1930
-
"Terrific GAMES for the Tl99/4A" (Book)
by Hal Renko and Sam Edwards
Most of the program codes can be found here... https://www.ti99iuc.it/web/index.php?pageid=database_cerca&archivioid=643
And here is the PDF!
Terrific Games for the TI994A - 1983 - by HalRenko Sam Edwards.pdf
- 1
-
5 hours ago, ti99iuc said:
I am also work on the software published in the TERRIFIC GAMES for the TI99
https://www.ti99iuc.it/web/index.php?pageid=database_cerca&archivioid=643
someone still missing.Make a separate tread for this book?
Anyway, I looked at... "Here Lives/QUI VIVE" and I am stomped at 1700, I think most of the bugs are out.
Spoiler10 REM TI EXTENDED-QUI VIVE 20 CALL CLEAR 30 RANDOMIZE 40 DIM SF(41,4),SO(41) 50 DIM D(107,1),DF(15,8) 60 DIM CC(4,1),B(24),C(24) 70 GOTO 1870 80 REM compute points of df********** 90 GV=0 :: P1=0 :: P2=0 :: C1=0 :: C2=0 100 D1=B(DF(NF,0)):: D2=B(DF(NF,1)) 110 IF D1=1 OR 02=1 THEN P1=1 120 IF D1=10 OR 02=10 THEN C1=10 130 D1=B(DF(NF,2)):: D2=B(DF(NF,3)) 140 IF D1=1 OR 02=1 THEN P2=1 150 IF D1=10 OR D2=10 THEN C2=10 160 GV=B(DF(NF,4))+B(DF(NF,5))+B(DF(NF,6)) 170 P=GV+P1+P2+C1+C2 180 IF GV=30 AND(C1=0 OR C2=0)THEN P=P-10 190 IF GV=3 AND(P1=0 OR P2=0)THEN P=P-1 200 RETURN 210 REM initialize single figu~es (sf) 220 FOR I=0 TO 41 :: READ X$ 230 FOR J=1 TO 5 240 SF(I,J-1)=ASC(SEG$(X$,J,1))-65 250 NEXT J :: NEXT I :: RETURN 260 REM wings(AV<>)***** 270 DATA UQMSV,PLHNT,KGCIO 280 DATA AGMIE,FLRNJ,KQWSO 290 DATA AGMQU,BHNRV,CIOSW 300 DATA EIHSV,DHLRX,CGKQW 310 REM times(X)***** 320 DATA ACGKM,BDHLN,CEIMO 330 DATA FLHPR,GIMQS,HJNRT 340 DATA KMQUW,LNRVX,MOSWY 350 REM plus(+)***** 360 DATA BFGHL,CGHIM,DHIJN 370 DATA GKLMQ,HLMNR,IMNOS 380 DATA LPQRV,MQRSW,NRSTX 390 REM diagonals(\/) 400 DATA AGHSY,EIMQU 410 REM columns(I)***** 420 DATA AFKPU,BGLQV,CHMRW 430 DATA DINSX,EJOTY 440 REM rows(-)***** 450 DATA ABCDE,FGHIJ,KLMNO 460 DATA PQRST,UVWXY 470 REM initialize double figures (df) 480 FOR I=0 TO 107 STEP 12 :: READ X$ 490 FOR J=0 TO 11 :: FOR K=0 TO 1 500 L=2*J+K+1 :: D(I+J,K)=ASC(SEG$(X$,L,1))-49 510 NEXT K :: NEXT J :: NEXT I 520 RETURN 530 DATA 171:1A1C1E1M101P2>2@2B2J 540 DATA 393<3=3?3G474:4=4?4A4G40 550 DATA 4P5@5B5D5J696<6C6E6M7=7A 560 DATA 7C71707P8>8B8D8J9?9E9K:? 570 DATA :A:E:K:O:P;>;@;D;J<=<C<I 580 DATA =G=I=O>F>H>J?G?K?P@F@J@L 590 DATA AGAIAKANAOAPBHBJBNCICMCP 600 DATA DJDLDNEKEMEOFRFWGSGWHTHW 610 DATA IRIXJSJXKTKXLRLVMSHYNTNY 620 REM compute double figure fields•••••••••• 630 TC=4 :: TN=0 640 FOR I=0 TO 4 :: C(SF(D(DF1,0),I))=1 :: NEXT I 650 FOR I=0 T0 4 :: SF1=SF(D(DF1,1),I) 660 IF C(SF1)=1 THEN 680 670 DF(NF,TN)=SF1 :: TN=TN+1 :: GOTO 690 680 DF(NF,TC)=SF1 :: TC=TC+1 .. C(SF1)=0 690 NEXT I 700 FOR I=0 TO 4 :: SF1=SF(D(DF1,0),I) 710 IF C(SF1)=I THEN DF(NF,TN)=SF1 :: TN=TN+1 :: C(SF1)=0 720 NEXT I :: RETURN 730 REM 740 REM display board********** 750 PRINT " " 760 FOR I=0 TO 4 :: FOR J=0 TO 4 770 F=5*1+J 780 IF B(F)=0 THEN PRINT " "; 790 IF B(F)=1 THEN PRINT "P"; 800 IF B(F)=10 THEN PRINT "C"; 810 NEXT J :: PRINT 5-I :: NEXT I 820 PRINT 830 PRINT "ABCDE" 840 PRINT " " 850 RETURN 860 REM determine owner of sf's********** 870 OM=-1 :: WM=-1 880 FOR SF1=0 TO 41 890 P=B(SF(SF1,0))+B(SF(SF1,1))+B(SF(SF1,2))+B(SF(SF1,3))+B(SF(SF1,4)) 900 IF P=0 OR P=10 OR P=20 OR P=30 THEN SO(SF1)=10 :: GOTO 1000 910 IF P<>40 THEN 950 920 GOSUB 1010 930 GOSUB 1050 940 WM=1 :: SF1=41 :: GOTO 1000 950 IF P>20 OR P<3 OR P=11 OR P=12 THEN SO(SF1)=0 :: GOTO 1000 960 SO(SF1)=1 970 IF P=4 AND OM=-1 THEN GOSUB 1010 980 IF P=14 THEN GOSUB 1050 990 IF P=S THEN SF1=41 1000 NEXT SF1 :: RETURN 1010 REM determine obligatory move********** 1020 FOR I=0 TO 4 1030 IF B(SF(SF1,I))=0 THEN OM=SF(SF1,I) 1040 NEXT I :: RETURN 1050 REM determine pinned checker********** 1060 FOR I=0 TO 4 1070 IF B(SF(SF1,I))<>10 THEN 1110 1080 FOR J=0 TO CC1-1 1090 IF SF(SF1,I)=CC(J,0)THEN CC(J,1)=1 1100 NEXT J 1110 NEXT I 1120 RETURN 1130 REM determine interesting df's******** 1140 NC=0 :: NP=0 :: NF=0 1150 FOR I=0 TO 15 1160 DF(I,8)=-1 1170 DF(I,7)=0 1180 NEXT I 1190 FOR DF1=0 TO 107 1200 O1=SO(D(DF1,0)) :: 02=SO(D(DF1,1)) 1210 IF 01<>02 OR 01=0 OR 02=0 THEN 1330 1220 GOSUB 620 1230 GOSUB 80 1240 IF P=4 OR P=14 THEN DFINF,71=1 :: GOTO 1270 1250 IF 01=1 OR P<=DF(NF,8)THEN 1330 1260 DF(NF,7)=10 1270 DF(NF,S)=P 1280 NF=0 1290 FOR I=0 TO 15 1300 IF DF(I,8)>=DF(NF,8)THEN 1320 1310 IF DF(I,7)=0 OR DF(I,7)=10 THEN NF=I 1320 NEXT I 1330 NEXT DF1 1340 RETURN 1350 REM 1360 REM determine strategic value of move 1370 IF WM=1 THEN 1520 1380 MC=0 :: N2=0 1390 FOR NF=0 TO 1 1400 IF DF(NF,7)=0 THEN 1460 1410 GOSUB 80 1420 IF DF(NF,7)=1 THEN 1450 1430 IF P=MC THEN N2=N2+1 1440 IF P>MC THEN MC=P :: N2=1 1450 IF P=4 THEN NF=15 1460 NEXT NF 1470 IF PP=-1 THEN 1520 1480 IF P=4 THEN RETURN 1490 IF MC<MP THEN RETURN 1500 IF MC=MP AND N2<N1 THEN RETURN 1510 IF MC=MP AND N2=N1 AND RND<.5 THEN RETURN 1520 MP=MC :: N1=N2 1530 PP=CP :: PT=CT 1540 RETURN 1550 REM 1560 REM Player move******* 1570 IF PC<5 THEN 1610 1580 PRINT "WHICH CHECKER 00 YOU WANT TO MOVE" 1590 GOSUB 1690 :: PT=X 1600 IF B(PT)<>1 THEN PRINT "N(;.,. POSSIBLE" : : GOTO 1580 1610 PRINT "WHERE DO YOU PUT YOUR CHECKER" 1620 GOSUB 1690 1: PP=X 1630 IF B(PP)<>0 THEN PRINT "NOT POSSIBLE" :: GOTO 1610 1640 IF PC=5 THEN B(PT)=0 1650 IF PC<5 THEN PC=PC+1 1660 B(PP)=1 1670 GOSUB 740 1680 RETURN 1690 REM input********** 1700 INPUT X$:: IF LEN(X$)<>2 THEN 1750 1710 L$=SEG$(X$,1,1):: D$=SEG$(X$,2,1) 1720 IF L$<"A" OR L$>"E" OR D$<"1" OR D$>"5" THEN 1750 1730 X=ASC(L$)-S*VAL(D$)-40 1740 RETURN 1750 PRINT "WRONG INPUT,TRY AGAIN" :: GOTO 1700 1760 REM computer move********** 1770 IF CC1<5 THEN PT=CC1 :: CC1=CC1+1 :: GOTO 1830 1780 PRINT "I TAKE ";CHR$(65+PT-INT(PT/5)*5);5-INT(PT/5) 1790 B(PT)=0 1800 FOR CI=0 TO 4 1810 IF CC(CI,0)=PT THEN PT=CI :: CI=4 1820 NEXT CI 1830 PRINT "I PUT IT AT ";CHR$(65+PP-INT(PP/5)*5);5-INT(PP/5) 1840 B(PP)=10 :: CC(PT,0)=PP 1850 GOSUB 740 1860 RETURN 1870 REM main program********** 1880 PRINT "PLEASE WAIT" 1890 GOSUB 210 1900 GOSUB 470 1910 CC1=0 :: PC=0 1920 PP=12 :: GOTO 2140 1930 FOR I=0 TO 4 :: CC(I,1)=0 :: NEXT I 1940 GOSUB 860 1950 IF P=5 THEN END 1960 IF WM=1 THEN 1960 1970 GOSUB 1130 1980 MP=0 :: N1=0 :: PP=-1 1990 BF=0 :: EF=24 2000 IF OM<>-1 THEN BF=OM :: EF=OM 2010 FOR CP=BF TO EF 2020 IF B(CP)<>0 THEN 2130 2040 B(CP)=10 2050 IF CC1<5 THEN GOSUB 1360 :: GOTO 2120 2060 FOR CI=0 TO 4 2070 IF CC(CI,1) THEN 2110 2080 CT=CC(CI,0) :: B(CT)=0 2090 GOSUB 1360 2100 B(CT)=10 2110 NEXT CI 2120 B(CP)=0 2130 NEXT CP 2140 GOSUB 1760 2150 IF WM=1 THEN END 2160 GOSUB 1560 2170 PRINT "PLEASE WAIT" 2180 GOTO 1930
- 1
-
9 minutes ago, TheBF said:
I was looking at the code briefly and I don't exactly see where the pitch is being changed yet.
I will look again.
I guess this tread will be about improving the programs, now ? hehehe
- 3
-
5 hours ago, ti99iuc said:
maybe you missed the page on ti99iuc website:
https://www.ti99iuc.it/web/index.php?pageid=database_cerca&archivioid=345all the programs are linked in the page already ?
? Well... then I saved myself some work! I was thinking this is a book not seen that much.
But thank you very much, @ti99iuc- 1
-
4 minutes ago, TheBF said:
As former radio amateur, from the time when you had to pass Morse code test to get a license, I must say something.
The Morse code audio output is incorrect. The dit and the dah should be at the same frequency.
This is how Morse code sounds over radio links.
Could you implement the correct audio?
-
2 minutes ago, pixelpedant said:
Here are files for Adventure in Oz (from that book):
It's pretty good.
Thx!
That is page 113 in the book! -
MORSE CODER for TI EXTENDED BASIC by MIKE WILCOX (page 73)
There is a at least one bug. But I think it is working correct.
520 updated!!!
590 updated also!!!Spoiler100 REM *MORSE CODER* TI EXTENDED BASIC 110 REM BY MIKE WILCOX 120 REM FROM PROGRAMS FOR THE TI HOME COMPUTER 130 REM COPYRIGHT (C) 1983 BY STEVE DAVIS 140 RANDOMIZE :: CALL CHAR(139,"F0F0F0F00F0F0F0F"):: CALL CLEAR :: CALL SCREEN(16) 150 FOR I=1 TO 32 :: CALL HCHAR(1,I,139) :: NEXT I 160 FOR I=1 TO 24 :: CALL VCHAR(I,32,139) :: NEXT I 170 FOR I=32 TO 1 STEP -1 :: CALL HCHAR(24,1,139):: NEXT I 180 FOR I=24 TO 1 STEP -1 :: CALL VCHAR(I,1,139) :: NEXT I 190 DISPLAY AT(3,7):"PROGRAMS FOR THE" :: DISPLAY AT(5,7):"TI HOME COMPUTER" 200 DISPLAY AT(7,11):"PRESENTS:" :: DISPLAY AT(10,4):"COMPUTER COURSE IN THE" :: DISPLAY AT(12,3):"INTERNATIONAL MORSE CODE" 210 DISPLAY AT(23,8):"COPYRIGHT 1982" :: DISPLAY AT(18,4):"PRESS ANY KEY TO BEGIN" 220 DEF XX=INT(14*RND+2) 230 CALL KEY(0,K,S):: CALL SOUND(22,2975,0):: CALL COLOR(14,XX,1) 240 T=850*INT(RND*2) :: CALL SOUND(22,2125+T, 0):: CALL COLOR(14,1,XX) :: CALL SOUND(-99,2125,0) :: IF S=0 THEN 230 250 OPTION BASE 1 :: DIM U(52):: CALL SCREEN(8) 260 CALL CLEAR 270 DISPLAY AT(2,8)BEEP:" MENU:" :: DISPLAY AT(4,1):"PRESS-" :: DISPLAY AT(7,1):"1. TO DISPLAY CODE TABLES" 280 DISPLAY AT(9,1):"2. TO PRINT CODE TABLES" :: DISPLAY AT(11,1):"3. TO CODE MESSAGE" :: DISPLAY AT(13,1):"4. TO DECODE MESSAGES" 290 DISPLAY AT(15,1):"5. TO TEST YOURSELF ON CODE" :: DISPLAY AT(17,1):"6. END PROGRAM" 300 CALL KEY(0,K,S):: W=RND :: IF S=0 THEN 300 310 IF (K<49)+(K>54)THEN 300 320 CALL CLEAR 330 ON K-48 GOTO 340,350,370,380,390,400 340 PR$="" :: FLAG=0 :: CALL CODE(FLAG,PR$) :: GOTO 260 350 DISPLAY "ENTER PRINTER NAME DEVICE" :: INPUT "NAME:":PR$ 360 FLAG=1 :: CALL CODE(FLAG,PR$):: GOTO 260 370 CALL CODER :: GOTO 260 380 CALL DECODER :: GOTO 260 390 CALL TEST(U()):: GOTO 260 400 CALL CLEAR :: STOP 410 SUB CODE(FLAG,PR$) 420 CALL CLEAR 430 IF FLAG<>1 THEN 450 440 OPEN #1:PR$,OUTPUT 450 C=1 :: R=1 460 RESTORE 900 470 DISPLAY AT(1,2):"INTERNATIONAL MORSE CODE:" 480 FOR I=1 TO 26 490 READ L$,CODE$ 500 R=R+2 510 IF R>15 THEN R=3 :: C=C+7 520 DISPLAY AT(R,C):L$;" ";CODE$ 530 NEXT I 540 CALL CHAR(97,RPT$("0",9)&"408102") :: CALL CHAR(98,RPT$("0",10)&"205408") :: CALL CHAR(99,RPT$("0",12)&"6666") 550 R=20 :: C=4 560 DISPLAY AT(18,3):"FOREIGN LANGUAGE LETTERS:" 570 FOR I=1 TO 6 580 READ L$,CODE$ 590 DISPLAY AT(R,C):L$;" ";CODE$ 600 R=R+3 610 IF R>23 THEN R=20 :: C=C+8 620 NEXT I 630 DISPLAY AT(19,4):"a" :: DISPLAY AT(22,4):"c" :: DISPLAY AT(19,12):"a" :: DISPLAY AT(22,12):"b" :: DISPLAY AT(19,20):"c" :: DISPLAY AT(22,20):"c" 640 IF FLAG<>1 THEN 680 650 FOR I=1 TO 24 :: FOR J=1 TO 32 :: CALL GCHAR(I,J,X) :t CALL HCHAR(I,J,30) :: CALL HCHAR(I,J,X) 660 P$=P$&CHR$(X) :: NEXT J :: PRINT #1:P$ :: P$="" :: NEXT I 670 GOTO 690 680 CALL KEY(0,K,S) :: IF S=0 THEN 680 690 CALL CLEAR 700 DISPLAY AT(1,2):"INTERNATIONAL MORSE CODE:" 710 DISPLAY AT(3,1):"PUNCTUATION:" 720 R=5 :: C=1 730 FOR I=1 TO 10 740 READ L$,CODE$ 750 DISPLAY AT(R,C):L$ :: DISPLAY AT(R,C+14):CODE$ 760 R=R+2 770 NEXT I 780 DISPLAY AT(3,21):"NUMBERS:" 790 R=5 :: C=22 800 FOR I=1 TO 10 810 READ L$,CODE$ 820 DISPLAY AT(R,C):L$;" ";CODE$ 830 R=R+2 840 NEXT I 850 IF FLAG<>1 THEN 890 860 FOR I=1 TO 24 STEP 2 :: FOR J=1 TO 32 :: CALL GCHAR(I,J,X) :: CALL HCHAR(I,J,30) :: CALL HCHAR(I,J,X) 870 P$=P$&CHR$(X):: NEXT J :: PRINT #1:P$ :: P$="" :: NEXT I :: CLOSE #1 880 FLAG=0 :: SUBEXIT 890 CALL KEY(0,K,S):: IF S=0 THEN 890 900 DATA A,._,B,_...,C,_._.,D, ..,E,.,F,...,G,__.,H,....,I,..,J,.___,K,_._,L,.-...,M,__,N,_.,O,___ 910 DATA P,.__.,Q,__._,R,._.,S,...,T,_,U,.._,V,..._,W,.__,X,_.._,Y,_.__,Z,__.. 920 DATA A,.__._,A,._._,E,.._..,N,__.__,O,___.,U,..__ 930 DATA ", COMMA",__..__,. PERIOD,._._._,? QUESTION,..__..,; SEMI-COLON,_._._.,: COLON,___... 940 DATA ’ APOSTROPHE,.____.,- HYPHEN,_...._,/ SLASH,_.._.,()PARENTHESIS,_.__._,_ UNDERLINE,..__._ 950 DATA 1,.____,2,..___,3,...__,4,...._,5,.....,6,_....,7,__...,8,___..,9,____.,0,_____, 960 SUBEND 970 SUB CODER 980 DISPLAY AT(10,1)BEEP ERASE ALL:"WOULD YOU LIKE YOUR CODED": :"MESSAGES PRINTED-OUT (Y/N)?" 990 CALL KEY(3,K,S):: IF (K<> 89)*(K<>78)THEN 990 1000 IF K=78 THEN FLAG=0 ELSE FLAG=1 1010 IF FLAG=0 THEN 1040 1020 DISPLAY "ENTER PRINTER NAME DEVICE" :: INPUT "NAME:":PR$ 1030 OPEN #3:PR$, OUTPUT 1040 DISPLAY AT(10,1)BEEP ERASE ALL:"WOULD YOU LIKE YOUR CODED": :"MESSAGE SOUNDED-OUT (Y/N)?" 1050 CALL KEY(3,K,S):: IF K<>78 AND K<>89 THEN 1050 1060 IF K=89 THEN FLAG2=1 ELSE FLAG2=0 1070 ROW=2 :: COL=1 1080 DISPLAY AT(2,1)ERASE ALL:"YOUR ARE IN THE CODING MODE " 1090 DISPLAY AT(10,3):"TO RETURN TO THE MENU ": :" TYPE AND ENTER ""MENU""" 1100 DISPLAY AT(16,3):"PRESS ANY KEY TO BEGIN." :: CALL KEY(0,K,S):: IF S=0 THEN 1100 1110 DISPLAY AT(10,10)ERASE ALL:"CODER:" :: DISPLAY AT(12,1)BEEP:"ENTER YOUR MESSAGE TO CODE:": :"(TYPE AND ENTER ""MENU"" TO": :"RETURN.)" 1120 LINPUT MSG$ 1130 IF MSG$="MENU" THEN 1430 1140 M$(1)=SEG$(MSG$,1,60) :: M$(2)=SEG$(MSG$,61,120) :: M$(3)=SEG$(MSG$,121,180) :: M$(4)=SEG$(MSG$,181,240) :: M$(5)=SEG$(MSG$,241,300) 1150 CALL CLEAR :: DISPLAY AT(1,3):"TRANSLATING IN PROGRESS" 1160 FOR I=1 TO 5 1170 FOR J=1 TO LEN(M$(I)) 1180 RESTORE 900 1190 A$=SEG$(M$(I),J,1):: IF A$=" " THEN CODE$=" " :: GOTO 1250 1200 FOR X=1 TO 52 1210 READ L$,CODE$ 1220 IF A$=SEG$(L$,1,1)THEN 1250 1230 NEXT X 1240 IF A$<>L$ THEN CODE$="#" 1250 CMSG$=CMSG$&CODE$&" " 1260 FOR Z=1 TO LEN(CMSG$) 1270 COL=COL+1 :: IF COL<=31 THEN 1280 ELSE ROW=ROW+2 :: COL=2 1280 IF ROW>22 THEN ROW=3 1290 CALL HCHAR(ROW,COL,ASC(SEG$(CMSG$,Z,1))) 1300 NEXT Z 1310 CMSG$="" 1320 NEXT J 1330 NEXT I 1340 DISPLAY AT(1,1):" " :: DISPLAY AT(24,4):"TRANSLATION COMPLETED" 1350 IF FLAG=0 THEN 1410 1360 P$="" :: FOR X=2 TO 24 STEP 2 :: FOR Z=1 TO 32 :: CALL GCHAR(X,Z,M) 1370 P$=P$&CHR$(M) 1380 NEXT Z :: IF P$=RPT$(" ",32)THEN 1400 1390 PRINT #3:P$ :: P$="" :: NEXT X 1400 REM PRINTING COMPLETED 1410 IF FLAG2=1 THEN CALL SOUNDER(2,2) 1420 CALL KEY(0,K,S):: IF S=0 THEN 1420 ELSE ROW=2 :: COL=1 :: GOTO 1110 1430 IF FLAG=0 THEN 1450 1440 CLOSE #3 1450 FLAG=0 :: PR$="" :: SUBEND 1460 SUB DECODER :: MSG$="" 1470 DISPLAY AT(10,1)BEEP ERASE ALL:"WOULD YOU LIKE THE DECODED": :"MESSAGES PRINTED-OUT (Y/N)?" 1480 CALL KEY(3,K,S):: IF (K<>78)*(K<>89)THEN 1480 1490 IF K=78 THEN FLAG=0 ELSE FLAG=1 1500 IF FLAG=0 THEN 1530 1510 DISPLAY "ENTER PRINTER NAME DEVICE" :: INPUT "NAME:":PR$ 1520 OPEN #4:PR$,OUTPUT 1530 DISPLAY AT(10,1)BEEP ERASE ALL:"WOULD YOU LIKE THE CODED": :"MESSAGE SOUNDED-OUT (Y/N)?" 1540 CALL KEY(3,K,S):: IF K<>78 AND K<>89 THEN 1540 1550 IF K=89 THEN FLAG2=1 ELSE FLAG2=0 1560 DISPLAY AT(2,1)ERASE ALL:"YOU ARE IN THE DECODING MODE" :: DISPLAY AT(5, 1):"PRESS ENTER FOR TRANSLATION" 1570 DISPLAY AT(7,6):"""M"" TO RETURN TO MENU": :"FOR YOUR CONVENIENCE YOU": :"MAY USE A COMMA "","" TO PRINT" 1580 DISPLAY AT(13, 1):"A DASH "" "" (OR USE FCTN U)" 1590 DISPLAY AT(15,1):"YOU MUST LEAVE ONE SPACE": :"BETWEEN EACH LETTER, AND TWO": :"SPACES BETWEEN EACH WORD." 1600 DISPLAY AT(22,3):"PRESS ANY KEY TO BEGIN" 1610 CALL KEY(0,K,S):: IF S=0 THEN 1610 1620 DISPLAY AT(4,10)BEEP ERASE ALL:"DECODER:" :: DISPLAY AT(6,1):"PRESS ENTER T0 TRANSLATE": :"PRESS M TO RETURN PRESS C TO CORRECT" 1630 DISPLAY AT(12, 1):"ENTER YOUR MESSAGE:" 1640 CALL KEY(3,K,S):: IF (K<>13)*(K<>32)*(K<>44)*(K<>46)*(K<>67)*(K<>77)*(K<>95)THEN 1640 1650 IF K=67 AND MSG$="" THEN 1710 ELSE IF K=67 THEN MSG$=SEG$(MSG$, 1, LEN(MSG$)-1):: GOTO 1710 1660 IF K=77 THEN 2010 1670 IF K=44 THEN K=95 1680 IF K=32 THEN CALL SOUND(111,1000,5,2000,4,3000,3) 1690 IF K=13 THEN 1730 1700 MSG$=MSG$&CHR$(K) 1710 DISPLAY AT(14,1):MSG$ 1720 GOTO 1640 1730 IF FLAG2=1 THEN CALL SOUNDER(14,1) 1740 CALL CLEAR :: ROW=2 :: COL=2 :: T$="" :: CMSG$="" 1750 DISPLAY AT(1,3):"TRANSLATING IN PROGRESS" 1760 S=POS (MSG$," ",1) :: IF S=1 THEN T$=" " :: GOTO I860 1770 IF S=0 THEN A$=MSG$ :: GOTO 1790 1780 A$=SEG$(MSG$,1,S-1) 1790 RESTORE 900 1800 FOR I=1 TO 52 1810 READ L$,CODE$ 1820 IF A$=CODE$ THEN 1850 1830 NEXT I 1840 T$="#" :: GOTO 1860 1850 T$=SEG$(L$,1,1) 1860 FOR Z=1 TO LEN(T$) 1870 COL=COL+1 1880 IF COL<=31 THEN 1890 ELSE ROW=ROW+2 :: COL=2 1890 CALL HCHAR(ROW,COL,ASC(SEG$(T$,Z,1))) 1900 IF S=0 THEN 1930 1910 NEXT Z 1920 MSG$=SEG$(MSG$,S+1,LEN(MSG$)):: GOTO 1760 1930 DISPLAY AT(1,1):" " :: DISPLAY AT(24,3)BEEP:"TRANSLATION COMPLETED" 1940 IF FLAG=0 THEN 2000 1950 P$="" :: FOR X=2 TO 24 STEP 2 :: FOR Z=1 TO 32 :: CALL GCHAR(X,Z,M) 1960 P$=P$&CHR$(M) 1970 NEXT Z :: IF P$=RPT$(" ",32) THEN 1990 1980 PRINT #4:P$ :: P$="" :: NEXT X 1990 REM PRINTING COMPLETED 2000 CALL KEY(0,K,S):: IF S=0 THEN 2000 ELSE MS6$="" :: GOTO 1620 2010 IF FLAG=0 THEN 2030 2020 CLOSE #4 2030 SUBEND 2040 SUB TEST(U()) 2050 SCORE, RIGHT=0 :: FOR I=1 TO 52 :: U(I)=0 :: NEXT I 2060 DISPLAY AT(1,5)ERASE ALL:"SELF-TEST MODE:" 2070 DISPLAY AT(3,1):"THE COMPUTER WILL RANDOMLY": :"SELECT 10 LETTERS, NUMBERS,": :"OR PUNCTUATION SYMBOLS CNO" 2080 DISPLAY AT(9, 1):"FOREIGN LANGUAGE LETTERS3": :"AND YOU WILL NEED TO PROVIDEH": :"EITHER THE CORRECT CODE OR" 2090 DISPLAY AT(15,1):"THE LETTER, NUMBER OR SYMBOL": :"THAT IS BEING DEFINED." 2100 DISPLAY AT(19,1):"YOU WILL RECIEVE A SCORE AT": :"THE END OF THIS TEST.": :" PRESS ANY KEY TO START" 2110 CALL KEY(0,K,S):: IF S=0 THEN 2110 2120 DISPLAY AT(10,9)ERASE ALL:"TEST SET-UP" :: DISPLAY AT(12,9):"IN PROGRESS..." :: DISPLAY AT (14,7):"PLEASE STAND BY..." 2130 REM SET-UP TEST 2140 FOR I=1 TO 10 2150 N=INT(52*RND+1) 2160 IF (N>26)*(N<33)THEN 2150 2170 IF U(N)=1 THEN 2150 2180 U(N)=1 2190 RESTORE 900 2200 FOR RD=1 TO N 2210 READ L$,CODE$ 2220 NEXT RD 2230 IF RND>.45 THEN Q$(I)=CODE$ :: A$(I)=SEG$(L$,1,1) ELSE Q$(I)=SEG$(L$,1,1) :: A$(I)=CODE$ 2240 NEXT I 2250 CALL CLEAR 2260 FOR I=1 TO 10 2270 IF SEG$(Q$(I),1,1)=" " AND A$(I)="..__._" OR SEG$(Q$(I),1,1)="." AND A$(I)="._._._" THEN DISPLAY AT(1*2-1,1):" CODE:" :: GOTO 2290 2280 IF SEG$(Q$(I),1,1)="." OR SEG$(Q$(I),1,1)="_" THEN DISPLAY AT(I*2-1,1):"DECODE:" ELSE DISPLAY AT(I*2-1,1):" CODE:" 2290 DISPLAY AT(I*2-1,9):Q$(I) 2300 ACCEPT AT(I*2-1,16)BEEP:AN$ 2310 IF AN$<>A$(I) THEN CALL SOUND(110,220,2,330,3) :: DISPLAY AT(I*2,1):"THE RIGHT ANSWER IS ";A$(I) 2320 IF AN$=A$(I)THEN DISPLAY AT(I*2, 1):"YOU ARE CORRECT!" :: RIGHT=RIGHT+1 2330 NEXT I 2340 SCORE=RIGHT*10 :: DISPLAY AT(22,4):"YOUR SCORE IS ";STR$(SCORE);"%" 2350 DISPLAY AT(24,2):"PRESS ANY KEY TO CONTINUE" 2360 CALL KEY(0,K,S):: IF S=0 THEN 2360 2370 SUBEND 2380 SUB SOUNDER(M,N) 2390 FOR I=1 TO 300 :: NEXT I 2400 DISPLAY AT(1,4):"NOW SOUNDING-OUT CODE" :: DISPLAY AT(24,1):"" 2410 FOR I=M TO 24 STEP N :: FOR J=2 TO 31 :: CALL GCHAR(I,J,C) 2420 IF C=32 THEN CALL SOUND(250,42000,30):: X=X+1 2430 IF X=5 THEN 2470 2440 IF C=46 THEN CALL SOUND(150,2975,0) :: CALL SOUND(150,42000,30) :: X=0 2450 IF C=95 THEN CALL SOUND(300,2125,1) :: CALL SOUND(150,42000,30) :: X=0 2460 NEXT J :: NEXT I 2470 DISPLAY AT(1,1):"" :: DISPLAY AT(24,4):"SOUND-OFF COMPLETED" :: X=0 2480 SUBEND 2490 END
- 1
-
Programs for the Tl Home Computer
by Steve DavisI will slowly add code listings here!
If you find something interesting, feel free to copy the code to this tread.
The Book (If you don't have it)- 3
-
Asked for password... still nothing! The meeting is starting in 2 min?
-
57 minutes ago, arcadeshopper said:
Today at 3pm Pacific
1h. and 11min. from NOW!
- 1
-
LOL - TOTO - Africa!!! (Have to play around to find the best combo of instruments)
Spoiler100 DATA 4250,1318,0,0,240,164,220,0,120,1318,0,0,120,164,220,0,120,1318,0,0,600,164,220,0 110 DATA 240,146,195,0,2400,195,261,0,240,164,220,0,120,1318,0,0,120,164,220,0,120,1318,0,0 120 DATA 600,164,220,0,240,146,195,0,2400,195,261,0,240,164,220,0,120,1318,0,0,120,164,220,0 130 DATA 120,1318,0,0,600,164,220,0,240,146,195,0,2400,195,261,0,240,164,220,0,120,1318,0,0 140 DATA 120,164,220,0,120,1318,0,0,600,164,220,0,240,146,195,0,2400,195,261,0,960,246,293,0 150 DATA 480,233,261,0,480,220,261,0,1920,195,246,0,480,220,261,0,480,195,220,0 160 DATA 960,195,246,0,960,174,246,0,240,164,220,0,120,261,0,0,120,164,220,0,120,261,0,0 170 DATA 600,164,220,0,240,146,195,0,480,195,261,0,960,246,293,0,480,233,261,0,480,220,261,0 180 DATA 1920,195,246,0,480,220,261,0,480,195,220,0,960,195,246,0,960,174,246,0 190 DATA 240,164,220,0,120,261,0,0,120,164,220,0,120,261,0,0,600,164,220,0,240,146,195,0 200 DATA 480,195,261,0,960,246,293,0,480,233,261,0,480,220,261,0,1920,195,246,0 210 DATA 480,220,261,0,480,195,220,0,960,195,246,0,960,174,246,0,240,164,220,0,120,261,0,0 220 DATA 120,164,220,0,120,261,0,0,600,164,220,0,240,146,195,0,480,195,261,0,960,246,293,0 230 DATA 480,233,261,0,480,220,261,0,1920,195,246,0,240,164,220,0,120,523,659,0 240 DATA 120,164,220,0,120,493,523,0,240,164,220,0,15,493,587,0,45,164,220,0,60,110,493,0 250 DATA 240,164,220,0,240,146,195,0,2400,195,261,0,960,261,349,0,960,349,220,0 260 DATA 960,329,220,0,720,329,195,0,240,329,246,0,960,261,349,0,960,349,220,0,960,329,220,0 270 DATA 720,329,195,0,240,329,246,0,1920,220,349,0,960,220,440,0,960,195,246,0 280 DATA 960,261,349,0,960,349,220,0,1920,261,329,0,960,164,195,0,45,174,174,0,195,246,174,0 290 DATA 240,174,220,0,480,195,329,0,240,164,220,0,120,246,220,0,120,164,220,0,120,246,220,0 300 DATA 600,164,220,0,240,246,146,0,1440,246,195,0,960,195,261,0,240,164,220,0 310 DATA 120,1318,0,0,120,164,220,0,120,1318,0,0,600,164,220,0,240,146,195,0,2400,195,261,0 320 DATA 960,246,293,0,960,233,261,0,1920,195,246,0,960,220,261,0,960,195,246,0 330 DATA 960,174,246,0,240,164,220,0,120,261,1174,0,120,164,220,0,120,261,1174,0 340 DATA 600,164,220,0,240,146,195,0,480,195,261,0,960,246,293,0,960,233,261,0,1920,195,246,0 350 DATA 960,220,261,0,960,195,246,0,960,174,246,0,240,164,220,0,120,261,1174,0 360 DATA 120,164,220,0,120,261,1174,0,600,164,220,0,240,146,195,0,480,195,261,0 370 DATA 960,246,293,0,960,233,261,0,1920,195,246,0,240,164,220,0,120,659,1174,0 380 DATA 120,164,220,0,120,659,1174,0,240,164,220,0,15,659,1174,0,45,164,220,0,60,110,659,0 390 DATA 240,164,220,0,240,146,195,0,2400,195,261,0,960,220,440,0,960,220,293,0 400 DATA 960,220,261,0,720,195,246,0,240,246,391,0,960,261,220,0,960,293,220,0,960,261,329,0 410 DATA 480,329,391,0,240,329,440,0,240,329,391,0,960,220,440,0,960,220,293,0,960,220,261,0 420 DATA 720,195,246,0,240,246,391,0,480,261,349,0,480,261,349,293,480,349,220,293 430 DATA 480,349,329,1318 440 ! Player code 450 FOR I=1 to 185 460 READ DUR,F1,F2,F3 470 IF F2=0 THEN CALL SOUND(DUR,F1,0 ) ELSE IF F3=0 THEN CALL SOUND(DUR,F1,0 ,F2,0 ) ELSE CALL SOUND(DUR,F1,0 ,F2,0 ,F3,0 ) 480 NEXT I
Ver. 2
Spoiler100 DATA 4250,174,0,0,240,164,220,0,120,174,0,0,120,164,220,0,120,174,0,0,600,164,220,0 110 DATA 240,146,195,0,240,195,261,0,120,195,261,698,120,195,261,659,120,195,261,523 120 DATA 120,195,261,659,120,195,261,698,120,195,261,659,120,195,261,523,120,195,261,659 130 DATA 120,195,261,523,120,195,261,659,120,195,261,523,120,195,261,493,120,195,261,523 140 DATA 120,195,261,493,120,195,261,391,120,195,261,698,240,195,261,659,240,164,220,0 150 DATA 120,659,0,0,120,164,220,0,120,659,0,0,600,164,220,0,240,146,195,0,240,195,261,0 160 DATA 240,195,261,523,720,195,261,0,360,195,261,523,120,195,261,493,120,195,261,523 170 DATA 120,195,261,493,120,195,261,391,120,195,261,698,240,195,261,659,240,164,220,0 180 DATA 120,659,0,0,120,164,220,0,120,659,0,0,600,164,220,0,240,146,195,0,240,195,261,0 190 DATA 120,195,261,698,120,195,261,659,120,195,261,523,120,195,261,659,120,195,261,698 200 DATA 120,195,261,659,120,195,261,523,120,195,261,659,240,195,261,698,120,195,261,523 210 DATA 120,195,261,493,120,195,261,523,120,195,261,493,480,195,261,523,240,164,220,0 220 DATA 120,523,0,0,120,164,220,0,120,523,0,0,600,164,220,0,240,146,195,0,240,195,261,0 230 DATA 120,195,261,698,120,195,261,659,120,195,261,523,120,195,261,659,120,195,261,698 240 DATA 120,195,261,659,120,195,261,523,120,195,261,659,240,195,261,698,120,195,261,523 250 DATA 120,195,261,493,120,195,261,523,120,195,261,493,120,195,261,523,120,195,261,659 260 DATA 240,195,261,698,120,246,293,523,120,246,293,493,120,246,293,523,120,246,293,493 270 DATA 120,246,293,391,120,246,293,698,240,246,293,659 280 ! Player code 290 FOR I=1 to 92 300 READ DUR,F1,F2,F3 310 IF F2=0 THEN CALL SOUND(DUR,F1,0 ) ELSE IF F3=0 THEN CALL SOUND(DUR,F1,0 ,F2,0 ) ELSE CALL SOUND(DUR,F1,0 ,F2,0 ,F3,0 ) 320 NEXT I
- 1
-
One of my fav classical music... Toccata & Fuge
Not VERY good but it is OK.
Spoiler100 DATA 180,880,440,0,540,783,880,0,1440,880,440,0,360,220,0,0,180,783,391,0,180,698,349,0 110 DATA 180,659,329,0,180,587,293,0,360,554,277,0,2160,587,293,0,1680,220,0,0,120,440,220,0 120 DATA 1080,391,440,0,720,440,220,0,360,220,0,0,360,329,164,0,360,349,174,0,360,277,138,0 130 DATA 720,293,146,0,2520,220,0,0,180,220,110,0,180,220,195,0,360,220,220,0,1800,220,110,0 140 DATA 180,220,195,0,180,220,174,0,180,220,164,0,180,220,146,0,360,138,138,0,720,146,146,0 150 DATA 3240,220,0,0,1440,146,0,0,540,130,146,0,900,164,130,146,540,277,164,146 160 DATA 4250,329,277,146,2160,293,146,146,720,174,146,0,4250,146,0,0,720,277,138,0 170 DATA 480,293,146,0,480,329,164,0,480,261,130,0,480,293,146,0,480,329,164,0,480,261,130,0 180 DATA 480,293,146,0,414,329,164,0,414,261,130,0,822,293,146,0,618,329,164,0,618,349,174,0 190 DATA 480,391,195,0,480,329,164,0,480,349,174,0,480,391,195,0,480,329,164,0,480,349,174,0 200 DATA 360,391,195,0,360,329,164,0,720,349,174,0,720,391,195,0,720,440,220,0,360,493,246,0 210 DATA 360,391,195,0,720,440,220,0,360,493,246,0,360,391,195,0,720,440,220,0,360,493,246,0 220 DATA 360,391,195,0,720,440,220,0,4250,146,0,0,720,554,277,0,480,587,293,0,480,659,329,0 230 DATA 480,523,261,0,480,587,293,0,480,659,329,0,480,523,261,0,480,587,293,0,414,659,329,0 240 DATA 414,523,261,0,822,587,293,0,618,659,329,0,618,698,349,0,480,783,391,0,480,659,329,0 250 DATA 480,698,349,0,480,783,391,0,480,659,329,0,480,698,349,0,360,783,391,0,360,659,329,0 260 DATA 720,659,698,0,360,783,698,0,360,783,391,0,360,880,783,0,360,880,440,0,360,987,493,0 270 DATA 360,783,391,0,720,880,440,0,360,987,493,0,360,783,391,0,720,880,440,0,360,987,493,0 280 DATA 360,783,391,0,1080,880,440,0,4250,146,0,0,720,880,440,0,480,783,391,0,480,987,493,0 290 DATA 480,659,329,0,480,783,391,0,480,987,493,0,480,659,329,0,480,698,349,0,480,880,440,0 300 DATA 480,587,293,0,480,698,349,0,480,880,440,0,480,587,293,0,480,659,329,0,480,783,391,0 310 DATA 480,523,261,0,480,659,329,0,480,783,391,0,480,523,261,0,480,587,293,0,480,698,349,0 320 DATA 480,698,493,0,480,698,587,0,480,698,698,0,480,698,493,0,480,698,523,0,216,659,261,0 330 DATA 198,659,329,0,414,440,329,0,6,523,329,0,408,523,220,0,6,659,220,0,612,659,246,0 340 DATA 6,440,246,0,318,440,293,0,90,440,195,0,552,493,195,0,66,493,246,0,252,587,246,0 350 DATA 66,587,293,0,576,391,293,0,66,391,195,0,252,493,195,0,66,493,220,0,564,587,220,0 360 DATA 78,587,261,0,318,391,261,0,630,440,261,0,12,523,440,0,318,523,261,0,642,523,349,0 370 DATA 642,523,440,0,240,523,261,0,12,523,195,0,66,523,246,0,318,523,349,0,630,523,391,0 380 DATA 12,391,246,0,480,493,246,0,480,493,329,0,480,493,391,0,480,493,493,0,480,493,329,0 390 DATA 480,493,349,0,216,440,174,0,264,440,220,0,354,293,220,0,126,293,146,0,288,349,146,0 400 DATA 192,349,164,0,426,440,164,0,54,440,195,0,264,293,195,0,216,293,138,0,426,329,138,0 410 DATA 54,329,164,0,264,391,164,0,216,391,195,0,426,277,195,0,54,277,130,0,480,329,130,0 420 DATA 108,391,130,0,252,391,0,0,336,261,0,0,690,261,146,0,54,261,130,146,264,130,146,0 430 DATA 1896,130,164,146,720,261,130,146,540,391,261,146,4250,493,391,146,156,493,440,146 440 DATA 204,493,440,0,360,493,391,0,180,493,349,0,180,349,261,0,360,329,261,0,360,293,261,0 450 DATA 288,277,261,0,252,277,246,0,120,246,246,0,840,261,246,0,228,220,246,0,216,220,220,0 460 DATA 276,220,220,195,480,261,220,195,180,220,174,195,288,329,220,195,72,329,246,195 470 DATA 540,391,246,195,120,349,246,195,120,391,246,195,30,246,174,195,180,349,246,195 480 DATA 198,391,246,195,36,349,391,195,36,349,391,0,72,349,246,0,36,391,246,0,108,391,261,0 490 DATA 120,349,261,0,24,349,587,0,144,391,587,0,144,349,587,0,144,391,587,0,144,349,587,0 500 DATA 144,587,329,0,144,391,587,0,72,329,587,0,504,329,523,0,144,329,293,0,3432,349,293,0 510 DATA 1800,349,329,0,1104,261,329,0,540,440,261,0,156,440,523,0,24,659,440,0 520 DATA 180,659,349,0,876,659,587,0,360,587,659,0,360,659,587,0,360,659,698,0,360,349,659,0 530 DATA 360,349,783,0,708,349,659,0,372,349,659,146,360,587,698,146,360,659,587,146 540 DATA 360,659,783,146,78,659,659,146,630,698,659,146,12,698,659,0 550 ! Player code 560 FOR I=1 to 261 570 READ DUR,F1,F2,F3 580 IF F2=0 THEN CALL SOUND(DUR,F1,0 ) ELSE IF F3=0 THEN CALL SOUND(DUR,F1,0 ,F2,0 ) ELSE CALL SOUND(DUR,F1,0 ,F2,0 ,F3,0 ) 590 NEXT I
-
29 minutes ago, SteveB said:
It is the SF2 file in the ZIP. The manual describes two options to use it in MuseScore and how to activate it for your score.
I looked at you YT and did what you did and then started to look for musicXML files to play with ? Your YT was so good that it got me started to play around with your tool (no need to read manual or anything else, hehehe).
Again... very cool tool! Now I only need to get a hold of the notes for TOTO's music ? hehehehe
Found this... cool in MuseScore3 with all the instruments... BUT can it be ported over to the TI and sound half decent ? hehehe (trying to understand how to do the sorting before your tool.)IMSLP190146-WIMA.5926-StIIPerM-xml.zip
PS! I am looking for the music in Elite and see if I can get it to sound OK on the TI.- 1
-
Yes, but...
I have tried and it is a good thing to have all 14 in your tool. Then I can test with 3 goes best together or only two. Just like in "Brandenburg Concerto No. 2 in F Major, BWV 1047 by Johann Sebastian Bach" I found all 4 to be a mess, 3... still messy, but in the end 2 of them fit together. So... to be able to play around and find what works together would be nice.
BUT, where do I find the TI soundfont? -
Violin and Violocello sounds OK. To much with the others. The TI dos not handle it good or it dos not sound good.
This is so cool!!!
Spoiler100 DATA 250,146,0,0,250,220,0,0,250,174,0,0,250,220,0,0,250,440,146,0,250,440,220,0 110 DATA 250,493,195,0,250,493,246,0,250,493,164,0,250,440,195,0,125,391,138,0,125,493,138,0 120 DATA 250,440,164,0,250,349,146,0,250,349,220,0,250,329,174,0,250,293,220,0,250,698,146,0 130 DATA 250,698,174,0,250,698,195,0,250,659,164,0,250,138,0,0,250,164,0,0,250,659,110,0 140 DATA 125,698,130,0,125,783,130,0,250,659,146,0,250,587,110,0,250,174,0,0,250,110,0,0 150 DATA 250,587,146,0,250,587,174,0,250,587,195,0,250,554,123,0,250,164,0,0,250,195,0,0 160 DATA 250,523,110,0,250,523,220,0,250,554,146,0,250,587,220,0,250,174,0,0,250,220,0,0 170 DATA 250,146,0,0,250,174,0,0,250,207,0,0,250,123,0,0,250,164,0,0,250,195,0,0 180 DATA 250,349,110,0,250,349,146,0,250,349,164,0,250,329,246,0,250,207,0,0,250,246,0,0 190 DATA 250,220,0,0,250,261,0,0,250,293,0,0,250,349,0,0,250,246,0,0,250,293,0,0 200 DATA 250,195,0,0,250,246,0,0,250,261,0,0,250,329,0,0,250,220,0,0,250,261,0,0 210 DATA 250,880,174,0,250,880,220,0,250,698,246,0,250,698,293,0,250,698,207,0,250,659,246,0 220 DATA 125,587,164,0,125,698,164,0,250,659,329,0,250,587,220,0,250,523,261,0,250,493,174,0 230 DATA 250,440,220,0,250,493,146,0,125,523,123,0,125,587,123,0,250,523,164,0,250,523,146,0 240 DATA 250,523,164,0,500,493,164,0,250,523,164,0,250,493,110,0,250,440,164,0,250,130,0,0 250 DATA 250,164,0,0,250,110,0,0,250,130,0,0,250,123,0,0,250,146,0,0,250,195,0,0 260 DATA 250,123,0,0,500,130,0,0,250,174,0,0,250,110,0,0,250,195,0,0,250,123,0,0 270 DATA 250,523,110,0,250,523,130,0,250,587,123,0,250,587,146,0,250,587,195,0,125,659,123,0 280 DATA 125,698,123,0,125,659,130,0,125,783,130,0,250,698,261,0,250,698,174,0,250,698,220,0 290 DATA 250,659,195,0,250,587,246,0,250,523,220,0,250,587,261,0,250,523,246,0,250,493,293,0 300 DATA 250,195,0,0,250,246,0,0,250,493,138,0,125,523,164,0,125,587,164,0,250,493,146,0 310 DATA 250,440,220,0,250,174,0,0,250,220,0,0,250,698,146,0,250,698,174,0,250,698,164,0 320 DATA 250,659,174,0,250,880,195,0,250,783,195,0,250,698,195,0,250,783,195,0,250,659,130,0 330 DATA 250,659,164,0,250,146,0,0,250,174,0,0,250,783,164,0,250,783,195,0,250,880,174,0 340 DATA 250,880,146,0,250,880,123,0,250,783,146,0,125,698,195,0,125,880,195,0,250,783,123,0 350 DATA 250,659,130,0,125,783,110,0,125,739,110,0,250,783,123,0,125,987,184,0,125,880,184,0 360 DATA 250,987,195,0,250,987,123,0,250,987,130,0,250,880,155,0,250,110,0,0,250,130,0,0 370 DATA 250,880,146,0,125,987,146,0,125,1046,146,0,250,880,195,0,250,783,164,0 380 DATA 250,174,0,0,250,138,0,0,500,1174,146,0,250,1174,195,0,250,1108,246,0,250,164,0,0 390 DATA 250,195,0,0,250,1046,220,0,250,1046,110,0,250,1108,146,0,250,1174,220,0 400 DATA 250,174,0,0,250,220,0,0,250,440,146,0,250,440,174,0,250,493,195,0,250,493,246,0 410 DATA 250,493,155,0,125,523,195,0,125,587,195,0,125,622,130,0,125,587,130,0,250,659,164,0 420 DATA 250,440,174,0,250,440,220,0,250,391,146,0,250,349,174,0,250,493,123,0,250,493,146,0 430 DATA 250,493,155,0,250,493,130,0,250,493,174,0,250,523,174,0,500,440,174,0,250,440,123,0 440 DATA 250,493,174,0,250,146,0,0,250,174,0,0,250,123,0,0,250,146,0,0,250,174,0,0 450 DATA 250,261,0,0,250,523,220,0,250,523,261,0,250,698,174,0,250,698,220,0,250,698,130,0 460 DATA 250,622,195,0,250,155,0,0,250,195,0,0,250,659,130,0,250,659,164,0,250,622,195,0 470 DATA 250,587,293,0,250,246,0,0,250,293,0,0,250,195,0,0,250,246,0,0,250,146,0,0 480 DATA 250,220,0,0,250,184,0,0,250,220,0,0,250,987,195,0,250,987,246,0,250,987,261,0 490 DATA 250,880,311,0,250,220,0,0,250,261,0,0,250,880,174,0,125,987,220,0,125,1046,220,0 500 DATA 250,880,246,0,250,783,293,0,250,195,0,0,250,246,0,0,250,783,155,0,250,783,195,0 510 DATA 250,783,220,0,250,739,261,0,250,184,0,0,250,220,0,0,250,698,146,0,250,698,293,0 520 DATA 250,739,195,0,250,783,246,0,250,155,0,0,250,195,0,0,250,783,130,0,250,783,110,0 530 DATA 250,783,146,0,250,783,130,0,250,783,146,0,250,880,146,0,125,587,146,0,125,783,146,0 540 DATA 250,739,146,0,250,739,195,0,250,783,293,0,250,783,246,0,250,293,0,0,250,195,0,0 550 DATA 250,493,246,0,250,493,138,0,250,493,164,0,250,440,110,0,250,130,0,0,250,146,0,0 560 DATA 250,195,0,0,250,110,0,0,250,164,0,0,250,138,0,0,250,164,0,0,250,110,0,0 570 DATA 250,659,130,0,250,659,146,0,250,659,220,0,250,587,174,0,250,220,0,0,250,146,0,0 580 DATA 250,349,174,0,250,349,110,0,250,349,164,0,250,329,138,0,250,164,0,0,250,110,0,0 590 DATA 250,130,0,0,250,146,0,0,250,220,0,0,250,174,0,0,250,220,0,0,250,146,0,0 600 DATA 250,587,174,0,250,587,110,0,250,587,164,0,250,554,138,0,250,164,0,0,250,110,0,0 610 DATA 250,523,130,0,250,523,146,0,250,554,220,0,250,587,184,0,250,220,0,0,250,146,0,0 620 DATA 250,174,0,0,250,195,0,0,250,293,0,0,250,246,0,0,250,587,293,0,250,587,195,0 630 DATA 250,698,246,0,250,698,130,0,250,698,195,0,250,659,164,0,250,195,0,0,250,130,0,0 640 DATA 250,659,164,0,250,659,174,0,250,659,261,0,250,698,220,0,250,261,0,0,250,174,0,0 650 DATA 250,220,0,0,250,123,0,0,250,174,0,0,250,146,0,0,250,698,174,0,250,698,123,0 660 DATA 250,880,146,0,250,880,164,0,250,880,246,0,250,783,195,0,250,246,0,0,250,164,0,0 670 DATA 250,987,195,0,250,987,110,0,250,987,164,0,250,880,138,0,250,164,0,0,250,110,0,0 680 DATA 250,130,0,0,250,146,0,0,250,220,0,0,250,174,0,0,250,220,0,0,250,146,0,0 690 DATA 250,440,174,0,250,440,195,0,250,493,246,0,250,493,164,0,250,493,195,0,250,440,130,0 700 DATA 125,391,164,0,125,587,164,0,250,523,174,0,250,493,220,0,250,440,146,0,250,391,174,0 710 DATA 250,349,123,0,250,329,146,0,250,293,164,0,250,391,195,0,250,391,138,0,250,391,164,0 720 DATA 250,349,110,0,125,329,220,0,125,391,220,0,250,349,146,0,250,329,174,0,250,293,123,0 730 DATA 250,146,0,0,250,195,0,0,250,987,164,0,250,987,110,0,250,987,195,0,250,880,110,0 740 DATA 250,783,110,0,250,698,110,0,250,783,110,0,250,880,123,0,250,698,123,0,750,659,123,0 750 DATA 250,698,123,0,500,587,123,0,250,587,110,0,125,659,110,0,125,698,110,0,250,440,110,0 760 DATA 250,391,110,0,250,493,146,0,250,440,146,0,1000,369,146,0,500,369,0,0 770 ! Player code 780 FOR I=1 to 399 790 READ DUR,F1,F2,F3 800 IF F2=0 THEN CALL SOUND(DUR,F1,0 ) ELSE IF F3=0 THEN CALL SOUND(DUR,F1,0 ,F2,0 ) ELSE CALL SOUND(DUR,F1,0 ,F2,0 ,F3,0 ) 810 NEXT I
-
Brandenburg Concerto No. 2 in F Major, BWV 1047 by Johann Sebastian Bach
This is with Flute, Oboe, Violin and Violocello. Dos not sound great. BUT, it is cool that you can with musicXML get all this code for "free". Thx, @SteveBPS! Will try to take off instruments to see if I get a better sounding code.
Spoiler100 DATA 250,146,0,0,250,220,0,0,250,174,0,0,250,220,0,0,250,440,146,0,250,440,220,0 110 DATA 250,493,195,0,250,493,246,0,250,493,164,0,250,440,195,0,125,391,138,0,125,493,138,0 120 DATA 250,440,164,0,250,349,146,0,250,349,220,0,250,329,174,0,250,293,220,0,250,440,698,146 130 DATA 250,440,698,174,250,493,698,195,250,493,659,164,250,493,138,0,250,440,164,0 140 DATA 125,391,659,110,125,493,659,110,125,440,698,130,125,440,783,130,250,349,659,146 150 DATA 250,349,587,110,250,329,174,0,250,293,110,0,250,880,698,146,250,880,698,174 160 DATA 250,987,698,195,250,987,659,123,250,987,164,0,250,880,195,0,125,783,659,110 170 DATA 125,987,659,110,125,880,698,220,125,880,783,220,250,698,659,146,250,698,587,220 180 DATA 250,659,174,0,250,587,220,0,250,880,349,146,250,880,349,174,250,987,349,207 190 DATA 250,987,329,123,250,987,164,0,125,1046,195,0,125,1174,195,0,125,1046,349,110 200 DATA 125,987,349,110,250,1046,349,146,250,830,349,164,250,830,329,246,250,739,207,0 210 DATA 250,659,246,0,250,1046,659,220,250,1046,659,261,250,1046,698,293,250,987,698,349 220 DATA 250,698,246,0,250,659,293,0,125,987,587,195,125,987,880,195,125,1046,783,246 230 DATA 125,1174,783,246,250,987,698,261,250,880,659,329,250,587,220,0,250,523,261,0 240 DATA 250,880,493,174,250,880,440,220,250,880,587,246,250,830,587,293,250,587,698,207 250 DATA 250,523,659,246,125,783,493,164,125,783,587,164,250,783,523,329,250,830,493,220 260 DATA 250,880,440,261,250,493,174,0,250,440,220,0,250,880,698,146,250,880,698,123 270 DATA 250,880,698,164,250,880,659,146,250,880,587,164,250,987,523,164,125,659,587,164 280 DATA 125,880,698,164,250,830,659,164,250,880,587,110,250,880,523,164,250,493,130,0 290 DATA 250,440,164,0,250,1046,523,110,250,1046,523,130,250,1046,587,123,250,987,587,146 300 DATA 250,587,195,0,125,659,123,0,125,698,123,0,125,987,659,130,125,987,783,130 310 DATA 125,1046,698,130,125,1174,698,130,250,987,698,174,250,880,698,110,250,659,195,0 320 DATA 250,587,123,0,250,880,523,110,250,880,587,130,250,880,523,123,250,783,493,146 330 DATA 250,587,195,0,125,659,123,0,125,698,123,0,250,783,493,130,125,880,523,261 340 DATA 125,987,587,261,250,783,493,174,250,698,440,220,250,659,195,0,250,587,246,0 350 DATA 250,1046,440,220,250,1046,440,261,250,1174,440,246,250,1174,391,293,250,1174,195,0 360 DATA 125,1318,246,0,125,1396,246,0,125,1318,391,138,125,1567,391,138,125,1396,440,164 370 DATA 125,1396,493,164,250,1396,391,146,250,1396,349,220,250,1318,174,0,250,1174,220,0 380 DATA 250,1046,587,146,250,987,587,174,250,1567,587,164,250,1567,523,174,250,1396,523,195 390 DATA 250,1318,493,195,250,1174,493,195,125,1046,440,195,125,1046,493,195,250,1046,523,130 400 DATA 250,1046,523,164,250,146,0,0,250,174,0,0,250,783,164,0,250,783,195,0,250,880,174,0 410 DATA 250,880,146,0,250,880,123,0,250,783,146,0,125,698,195,0,125,880,195,0,250,783,123,0 420 DATA 250,659,130,0,125,783,110,0,125,739,110,0,250,783,123,0,125,987,184,0,125,880,184,0 430 DATA 250,1174,987,195,250,1174,987,123,250,1244,987,130,250,1244,880,155,250,1244,110,0 440 DATA 250,1174,130,0,125,1046,880,146,125,1318,880,146,125,1174,987,146,125,1174,1046,146 450 DATA 250,1046,880,195,250,987,783,164,125,1174,174,0,125,1108,174,0,250,1174,138,0 460 DATA 125,1396,440,146,125,1318,440,146,250,1396,440,146,250,1396,493,195,250,1396,493,246 470 DATA 250,1318,493,164,250,440,195,0,125,391,1046,220,125,493,1046,220,250,1318,440,110 480 DATA 125,1396,349,146,125,1567,349,146,250,1318,349,220,250,1174,329,174,250,293,220,0 490 DATA 250,698,440,146,250,698,440,174,250,698,493,195,250,622,493,246,250,493,155,0 500 DATA 125,523,195,0,125,587,195,0,125,659,622,130,125,659,587,130,125,698,659,164 510 DATA 125,783,659,164,250,622,440,174,250,587,440,220,250,391,146,0,250,349,174,0 520 DATA 250,587,493,123,250,1396,587,146,250,1396,587,155,250,1567,523,130,250,1567,493,174 530 DATA 250,1567,523,174,250,1396,523,174,125,1244,587,174,125,1567,622,174,250,1396,523,123 540 DATA 250,1244,493,174,250,1174,698,146,250,698,174,0,250,987,123,0,250,587,987,146 550 DATA 250,587,987,174,250,587,880,261,250,523,523,220,250,523,261,0,250,880,698,174 560 DATA 250,880,698,220,250,880,698,130,250,783,622,195,250,155,0,0,250,783,195,0 570 DATA 250,783,659,130,250,1046,659,164,250,1046,622,195,250,1046,587,293,250,987,587,246 580 DATA 250,587,293,0,250,783,195,0,250,987,783,246,250,987,783,146,250,987,739,220 590 DATA 250,880,184,0,250,220,0,0,250,987,195,0,250,1174,987,246,250,1174,987,261 600 DATA 250,1244,880,311,250,1244,220,0,250,1244,261,0,250,1174,880,174,125,1046,987,220 610 DATA 125,1567,1046,220,250,1396,880,246,250,1244,783,293,250,1174,195,0,250,1046,246,0 620 DATA 250,987,587,155,250,880,587,195,250,783,622,220,250,1046,622,261,250,1046,622,184 630 DATA 250,1046,587,220,125,987,523,146,125,987,659,146,125,880,587,293,125,1046,587,293 640 DATA 250,987,523,195,250,880,493,246,250,783,440,155,250,391,195,0,250,440,783,130 650 DATA 125,1244,493,110,125,1244,523,110,250,1244,493,146,250,1244,493,130,250,1174,493,146 660 DATA 250,1046,440,146,250,987,440,146,125,1046,493,146,125,1318,493,146,250,1174,391,195 670 DATA 250,1046,391,293,250,987,783,246,250,880,293,0,250,783,587,195,250,587,493,246 680 DATA 250,659,493,138,250,659,493,164,250,659,440,110,125,698,130,0,125,783,130,0 690 DATA 125,698,146,0,125,659,146,0,250,493,698,195,250,493,554,110,250,493,554,164 700 DATA 250,440,493,138,250,440,164,0,250,110,0,0,250,783,659,130,250,783,659,146 710 DATA 250,783,659,220,250,698,587,174,250,220,0,0,250,587,146,0,250,587,349,174 720 DATA 250,587,349,110,250,554,349,164,250,329,138,0,250,164,0,0,250,659,110,0 730 DATA 250,391,659,130,250,391,659,146,250,391,587,220,250,349,174,0,250,220,0,0 740 DATA 250,146,0,0,250,698,587,174,250,698,587,110,250,698,587,164,250,659,329,138 750 DATA 250,329,164,0,250,391,110,0,250,391,523,130,250,391,523,146,250,369,554,220 760 DATA 250,587,184,0,250,880,220,0,250,880,739,146,250,1046,739,174,250,1046,739,195 770 DATA 250,1046,783,293,250,987,246,0,250,587,293,0,250,587,195,0,250,987,698,246 780 DATA 250,987,698,130,250,987,698,195,250,1046,391,164,250,391,195,0,250,466,130,0 790 DATA 250,466,659,164,250,493,659,174,250,440,659,261,250,698,220,0,250,523,261,0 800 DATA 250,523,440,174,250,622,440,220,250,622,440,123,250,622,493,174,250,587,146,0 810 DATA 250,698,174,0,250,698,123,0,250,698,880,146,250,698,880,164,250,698,880,246 820 DATA 250,659,987,195,250,987,246,0,250,587,164,0,250,587,987,195,250,587,987,110 830 DATA 250,554,987,164,250,880,138,0,250,659,164,0,250,659,659,110,250,783,659,130 840 DATA 250,783,659,146,250,783,587,220,250,698,174,0,250,220,0,0,250,146,0,0,250,698,440,174 850 DATA 250,698,440,195,250,698,493,246,250,659,493,164,250,493,195,0,250,440,130,0 860 DATA 125,659,391,164,125,659,587,164,125,698,523,174,125,783,523,174,250,659,493,220 870 DATA 250,587,440,146,250,391,174,0,250,1174,349,123,250,587,1174,146,250,587,987,164 880 DATA 250,587,987,195,250,554,987,138,250,880,391,164,125,783,349,110,125,987,349,110 890 DATA 250,523,880,220,250,523,783,146,250,554,698,174,250,587,659,123,250,587,146,0 900 DATA 250,659,195,0,125,587,698,164,125,587,783,164,250,587,698,110,250,587,698,195 910 DATA 250,587,698,110,250,587,659,110,250,659,659,110,125,440,698,110,125,587,698,110 920 DATA 250,554,554,123,500,783,554,123,125,783,587,123,125,987,587,123,250,880,415,123 930 DATA 250,783,415,123,250,698,391,123,250,698,440,123,125,698,349,110,125,554,349,110 940 DATA 250,587,349,110,250,587,329,110,250,587,293,110,375,523,293,146,1125,587,293,146 950 DATA 500,587,369,0 960 ! Player code 970 FOR I=1 to 433 980 READ DUR,F1,F2,F3 990 IF F2=0 THEN CALL SOUND(DUR,F1,0 ) ELSE IF F3=0 THEN CALL SOUND(DUR,F1,0 ,F2,0 ) ELSE CALL SOUND(DUR,F1,0 ,F2,0 ,F3,0 ) 1000 NEXT I
-
OK, testing... I got this file... and if you load it there is a LOT of instruments and it dos not fit. I get "half boxes".
Anything you can do about that?
- 1
-
Wow, impressive!
- 2
-
18 hours ago, dhe said:
HeyBirt did a great video on from "Prototype to Product" using PCBWAY.
Typically you need to order some number of units, pay up front and then they ship to you the desired number of units built.
If someone wanted to up front the cash and be a stocking distributor that might be a way to go...
It would be cool to make a modern PEB. Not Floppy, but SD. Setup for modern printer, wireless and what not. And then use the same system. AND make it so that new stuff can be added to it. Also connection for Raspberry Pi. All into a smaller PEB. But I guess it is to much for one person to do. But this YT makes me dream ?
-
6 hours ago, TheBF said:
Norwegian is almost readable to me a I can hear some of it too, because I speak Dutch (Nederlands) by marriage.
I enjoy watching this series for different languages on Youtube. Here is the Nordic family. Islandic wow!
Norwegian, Danish and Swedish is really the same language. Even if everyone will say it is different. But the fact is is the same language, BUT with different dialects.
Icelandic is how they spoke in Norway some 1000 years ago. And I guess more or less as in Sweden and Denmark, at that time. But, it has not changed that much. The Icelandic language have been able to keep its roots.
Norwegian, Danish and Swedish have had a lot of influence from Europa and then we have had some "drift" in the Norwegian, Danish and Swedish languages. Norway was under Danish rule, so our written language is very similar, just a few words are different. Then Norway was under Swedish rule, so Norwegians and Sweden understand one and other much better, but do not share so many written words. Norway has good connections to all the others. But that cant be said for the others towards each other.
Also, IF you speak Dutch >not to fast<, I am able to understand more.
My name is Odd and English has bastardised my name. They have the gist if it, but not all there. Odd means sharp, pointy or spear. So we have places called "NesODDen" (but the irony is that Nes is ALSO a name for land that sticks out and the "en" at the end means "one" or "THAT one"), and that means a part of the land sticks out. Florida would be a "Odde" (here "e" at the end is kinda the same as "en" or one). So... something that stick's out and since the English did not get ALL the meaning of Odd, they use it on people. Not on things, like we do. So, Odd is an old Viking name, that was carried to England and so to we (The Vikings) shared out language with the world ?
The very first thing (to get it back on the TI) I did with my brand new TI in the 80's, was to write my name to it... and I got back, "Don't understand!" So me and TI got of on the "wrong" foot. I am pretty sure the TI was trying to insult me. And writing more to it did not help. So, I had to learn IT'S language. I am pretty sure my TI still thinks I am a moron at times... based on its feedback. My "pronunciation" is not always the best ? hehehehe (even here).
BUT... making this program, it has only called me "moron" a hand-full of times and others times... not done what I wanted it to do! Probably a "pronunciation" problem ?- 3
-
Jimmy the Shark= Delay the Shark
Hehehehe -
It was a early morning on The Flying Seagull when Tiny Inkwood (Well for a pirate Tiny is not the best name so everyone called him TI, there is a reason for Jimmy the Shark always was hanging around, if you get the "drawing", but anyway, back to Tin... err TI...) was looking out over the ocean, this lovely morning. And was thinking... "What a great day to be a pirate! A seagull and it would all be perfect".
Last ver. with a new actor in the game! Thx to @TheBF
Spoiler10 CALL CLEAR 20 CALL MAGNIFY(3) 80 CALL CHAR(112,"FFFFFFFFFFFFFFFF") 90 REM SHIP 100 REM Venstre topp 110 CALL CHAR(36,"0000000000FF000000000000000000000704020100FF01020404080810204040") 120 REM Høyre topp 130 CALL CHAR(40,"F090A0C080FFC0A090908888848281810000000000FF00000000000000000000") 140 REM Venstre mid 150 CALL CHAR(44,"00000101020204087F1F0F0818080F078181010139013913FFFFFF888888FFFF") 160 REM Høyre mid 170 CALL CHAR(48,"C0C0C0C0CEC0CEE4FFFFFF888888FFFF8080404020201008FFFCFC888C88F8F0") 180 REM Venstre bunn 190 CALL CHAR(52,"03010000000000000000000000000000FFFFFFFF000000000000000000000000") 200 REM Høyre bunn 210 CALL CHAR(56,"FFFFFFFF000000000000000000000000E0C08000000000000000000000000000") 220 REM SAIL 230 REM SAIL LEFT UP 240 CALL CHAR(64,"00000000000000FF7F7F7F7F7F7F7F7F00000000000000FDFFFFFFFFFFFFFFFF") 250 REM SAIL RIGHT UP 260 CALL CHAR(68,"000000000000005FFFFFFFFFFFFFFFFF00000000000000FFFEFEFEFEFEFEFEFE") 270 REM SAIL LEFT DOWN 280 CALL CHAR(72,"7F7F7F7F7F7F7F000000000000000000FFFFFFFFFFFFFF000000000000000000") 290 REM SAIL RIGHT DOWN 300 CALL CHAR(76,"FFFFFFFFFFFFFF000000000000000000FEFEFEFEFEFEFE000000000000000000") 310 REM LIGHT 320 REM LEFT WINDOWS 330 CALL CHAR(80,"0000000707070000000000000000000000000077777700000000000000000000") 340 REM RIGHT WINDOWS 350 CALL CHAR(84,"0000007777770000000000000000000000000070707000000000000000000000") 360 REM WAKE 370 CALL CHAR(96,"2940245108101000224252142004040048244829A28024888850042848400000") 380 CALL CHAR(100,"004429402451081214002A4212140000842048244829A2802488885000204000") 390 CALL CHAR(104,"2524104429402451081214000A0202041020842048244829A280248880400000") 400 CALL CHAR(108,"4400252410442940240108020400020248441020842048244828A08020808040") 405 REM SUN 410 CALL CHAR(120,"20211013070F1FDF1F1F0F0713204040840404C8E0F0F9FAF8F8F0E0D0088482") 420 CALL CHAR(124,"00804033070F1F9F5F1F0F0763800911808007C8E0F0F8F8FBF8F0E0CC030000") 430 CALL CHAR(128,"81412013070F1F1FDF1F0F0713204080010204C8E0F0F8FBF8F8F0E0C8048281") 440 CALL CHAR(132,"00816013070F1FDF1F1F0F0713608100820404C8E0F0F8F9FAF8F0E0C8040482") 445 REM SHARK 450 CALL CHAR(136,"0000000000000000000010181C3E3EFF00000000000000000000000000000000") 460 CALL CHAR(140,"000000000000000000000818387C7CFF00000000000000000000000000000000") 770 CALL COLOR(11,5,1) 780 FOR A=19 TO 24 790 CALL HCHAR(A,1,112,32) 800 NEXT A 810 REM SAIL 820 CALL SPRITE(#11,64,15,112,112,0,0) 830 CALL SPRITE(#12,68,15,112,128,0,0) 840 CALL SPRITE(#13,72,15,128,112,0,0) 850 CALL SPRITE(#14,76,15,128,128,0,0) 910 REM SHIP 920 CALL SPRITE(#1,36,2,112,112,0,0) 930 CALL SPRITE(#2,40,2,112,128,0,0) 940 CALL SPRITE(#3,44,2,128,112,0,0) 950 CALL SPRITE(#4,48,2,128,128,0,0) 960 CALL SPRITE(#5,52,2,144,112,0,0) 970 CALL SPRITE(#6,56,2,144,128,0,0) 1010 REM LIGHT 1020 CALL SPRITE(#7,80,11,136,112,0,0) 1030 CALL SPRITE(#8,84,11,136,128,0,0) 1032 REM CALL SPRITE(#9,81,11,148,120,0,0) 1034 REM CALL SPRITE(#10,82,11,148,128,0,0) 1040 REM Wake 1050 CALL SPRITE(#15,96,6,148,120,0,0) 1060 FOR A=96 TO 108 STEP 4 1070 CALL PATTERN(#15,A) 1071 CALL SPRITE(#28,136,15,160,75,0,2) 1072 IF RND>0.5 THEN GOSUB 7010 ELSE GOSUB 8040 1073 IF RND>0.95 THEN GOSUB 6020 1140 REM SUN 1150 CALL SPRITE(#9,120,11,32,32,0,0) 1160 B=A+24 1170 CALL PATTERN(#9,B) 1180 FOR DELAY=1 TO 5 :: NEXT DELAY 1190 NEXT A 5000 GOTO 1060 6000 REM JAWS 6020 CALL SOUND(400,110,8) 6030 CALL SOUND(400,118,8) 6999 RETURN 7000 REM MOVEFIN LEFT 7010 CALL PATTERN(#28,136) :: CALL MOTION(#28,0,2) 7020 RETURN 8030 REM MOVE FIN RIGHT 8040 CALL PATTERN(#28,140) :: CALL MOTION(#28,0,-2) 8050 RETURN
- 3
-
And NOW... With Sun!!!
Spoiler10 CALL CLEAR 20 CALL MAGNIFY(3) 80 CALL CHAR(112,"FFFFFFFFFFFFFFFF") 90 REM SHIP 100 REM Venstre topp 110 CALL CHAR(36,"0000000000FF000000000000000000000704020100FF01020404080810204040") 120 REM Høyre topp 130 CALL CHAR(40,"F090A0C080FFC0A090908888848281810000000000FF00000000000000000000") 140 REM Venstre mid 150 CALL CHAR(44,"00000101020204087F1F0F0818080F078181010139013913FFFFFF888888FFFF") 160 REM Høyre mid 170 CALL CHAR(48,"C0C0C0C0CEC0CEE4FFFFFF888888FFFF8080404020201008FFFCFC888C88F8F0") 180 REM Venstre bunn 190 CALL CHAR(52,"03010000000000000000000000000000FFFFFFFF000000000000000000000000") 200 REM Høyre bunn 210 CALL CHAR(56,"FFFFFFFF000000000000000000000000E0C08000000000000000000000000000") 220 REM SAIL 230 REM SAIL LEFT UP 240 CALL CHAR(64,"00000000000000FF7F7F7F7F7F7F7F7F00000000000000FDFFFFFFFFFFFFFFFF") 250 REM SAIL RIGHT UP 260 CALL CHAR(68,"000000000000005FFFFFFFFFFFFFFFFF00000000000000FFFEFEFEFEFEFEFEFE") 270 REM SAIL LEFT DOWN 280 CALL CHAR(72,"7F7F7F7F7F7F7F000000000000000000FFFFFFFFFFFFFF000000000000000000") 290 REM SAIL RIGHT DOWN 300 CALL CHAR(76,"FFFFFFFFFFFFFF000000000000000000FEFEFEFEFEFEFE000000000000000000") 310 REM LIGHT 320 REM LEFT WINDOWS 330 CALL CHAR(80,"0000000707070000000000000000000000000077777700000000000000000000") 340 REM RIGHT WINDOWS 350 CALL CHAR(84,"0000007777770000000000000000000000000070707000000000000000000000") 360 REM WAKE 370 CALL CHAR(96,"2940245108101000224252142004040048244829A28024888850042848400000") 380 CALL CHAR(100,"004429402451081214002A4212140000842048244829A2802488885000204000") 390 CALL CHAR(104,"2524104429402451081214000A0202041020842048244829A280248880400000") 400 CALL CHAR(108,"4400252410442940240108020400020248441020842048244828A08020808040") 410 CALL CHAR(120,"20211013070F1FDF1F1F0F0713204040840404C8E0F0F9FAF8F8F0E0D0088482") 420 CALL CHAR(124,"00804033070F1F9F5F1F0F0763800911808007C8E0F0F8F8FBF8F0E0CC030000") 430 CALL CHAR(128,"81412013070F1F1FDF1F0F0713204080010204C8E0F0F8FBF8F8F0E0C8048281") 440 CALL CHAR(132,"00816013070F1FDF1F1F0F0713608100820404C8E0F0F8F9FAF8F0E0C8040482") 770 CALL COLOR(11,5,1) 780 FOR A=19 TO 24 790 CALL HCHAR(A,1,112,32) 800 NEXT A 810 REM SAIL 820 CALL SPRITE(#11,64,15,112,112,0,0) 830 CALL SPRITE(#12,68,15,112,128,0,0) 840 CALL SPRITE(#13,72,15,128,112,0,0) 850 CALL SPRITE(#14,76,15,128,128,0,0) 910 REM SHIP 920 CALL SPRITE(#1,36,2,112,112,0,0) 930 CALL SPRITE(#2,40,2,112,128,0,0) 940 CALL SPRITE(#3,44,2,128,112,0,0) 950 CALL SPRITE(#4,48,2,128,128,0,0) 960 CALL SPRITE(#5,52,2,144,112,0,0) 970 CALL SPRITE(#6,56,2,144,128,0,0) 1010 REM LIGHT 1020 CALL SPRITE(#7,80,11,136,112,0,0) 1030 CALL SPRITE(#8,84,11,136,128,0,0) 1032 REM CALL SPRITE(#9,81,11,148,120,0,0) 1034 REM CALL SPRITE(#10,82,11,148,128,0,0) 1040 REM Wake 1050 CALL SPRITE(#15,96,6,148,120,0,0) 1060 FOR A=96 TO 108 STEP 4 1070 CALL PATTERN(#15,A) 1080 FOR DELAY=1 TO 100 :: NEXT DELAY 1140 REM SUN 1150 CALL SPRITE(#9,120,11,32,32,0,0) 1160 B=A+24 1170 CALL PATTERN(#9,B) 1180 FOR DELAY=1 TO 5 :: NEXT DELAY 1190 NEXT A 5000 GOTO 1050
"Programs for the Tl Home Computer" (Book)
in TI-99/4A Computers
Posted
Sorry Lee, I made a new tread for this... could you post it there too?
Anyway... Thx... You have eyes like an eagle!