mirror of
https://github.com/curioustorvald/tsvm.git
synced 2026-06-12 07:44:03 +09:00
basic:simpler sample prg
This commit is contained in:
203
assets/amazing.bas
Normal file
203
assets/amazing.bas
Normal file
@@ -0,0 +1,203 @@
|
|||||||
|
1 OPTIONBASE 1
|
||||||
|
10 PRINT SPC(28);"AMAZING PROGRAM"
|
||||||
|
20 PRINT SPC(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
||||||
|
30 PRINT
|
||||||
|
31 PRINT
|
||||||
|
32 PRINT
|
||||||
|
33 PRINT
|
||||||
|
100 PRINT "WHAT ARE YOUR WIDTH";
|
||||||
|
101 INPUT H
|
||||||
|
102 PRINT "WHAT ARE YOUR LENGTH";
|
||||||
|
103 INPUT V
|
||||||
|
105 IF H<>1 AND V<>1 THEN GOTO 110
|
||||||
|
106 PRINT "MEANINGLESS DIMENSIONS. TRY AGAIN."
|
||||||
|
107 GOTO 100
|
||||||
|
110 W=DIM(H,V)
|
||||||
|
111 V=DIM(H,V)
|
||||||
|
120 PRINT
|
||||||
|
130 PRINT
|
||||||
|
140 PRINT
|
||||||
|
150 PRINT
|
||||||
|
160 Q=0
|
||||||
|
161 Z=0
|
||||||
|
162 X=INT(RND(1)*H+1)
|
||||||
|
165 FOR I=1 TO H
|
||||||
|
170 IF I==X THEN GOTO 173
|
||||||
|
171 PRINT ".--";
|
||||||
|
172 GOTO 175
|
||||||
|
173 PRINT ". ";
|
||||||
|
180 NEXT
|
||||||
|
190 PRINT "."
|
||||||
|
195 C=1
|
||||||
|
196 W(X,1)=C
|
||||||
|
197 C=C+1
|
||||||
|
200 R=X
|
||||||
|
201 S=1
|
||||||
|
202 GOTO 260
|
||||||
|
210 IF R<>H THEN GOTO 240
|
||||||
|
215 IF S<>V THEN GOTO 230
|
||||||
|
220 R=1
|
||||||
|
221 S=1
|
||||||
|
222 GOTO 250
|
||||||
|
230 R=1
|
||||||
|
231 S=S+1
|
||||||
|
232 GOTO 250
|
||||||
|
240 R=R+1
|
||||||
|
250 IF W(R,S)==0 THEN GOTO 210
|
||||||
|
260 IF R-1==0 THEN GOTO 530
|
||||||
|
265 IF W(R-1,S)<>0 THEN GOTO 530
|
||||||
|
270 IF S-1==0 THEN GOTO 390
|
||||||
|
280 IF W(R,S-1)<>0 THEN GOTO 390
|
||||||
|
290 IF R==H THEN GOTO 330
|
||||||
|
300 IF W(R+1,S)<>0 THEN GOTO 330
|
||||||
|
310 X=INT(RND(1)*3+1)
|
||||||
|
320 REM ON X GOTO 790,820,860
|
||||||
|
321 IF X==1 THEN GOTO 790
|
||||||
|
322 IF X==2 THEN GOTO 820
|
||||||
|
323 IF X==3 THEN GOTO 860
|
||||||
|
330 IF S<>V THEN GOTO 340
|
||||||
|
334 IF Z==1 THEN GOTO 370
|
||||||
|
338 Q=1
|
||||||
|
339 GOTO 350
|
||||||
|
340 IF W(R,S+1)<>0 THEN GOTO 370
|
||||||
|
350 X=INT(RND(1)*3+1)
|
||||||
|
360 REM ON X GOTO 790,820,910
|
||||||
|
361 IF X==1 THEN GOTO 790
|
||||||
|
362 IF X==2 THEN GOTO 820
|
||||||
|
363 IF X==3 THEN GOTO 910
|
||||||
|
370 X=INT(RND(1)*2+1)
|
||||||
|
380 REM ON X GOTO 790,820
|
||||||
|
390 IF R==H THEN GOTO 470
|
||||||
|
400 IF W(R+1,S)<>0 THEN GOTO 470
|
||||||
|
405 IF S<>V THEN GOTO 420
|
||||||
|
410 IF Z==1 THEN GOTO 450
|
||||||
|
415 Q=1
|
||||||
|
416 GOTO 430
|
||||||
|
420 IF W(R,S+1)<>0 THEN GOTO 450
|
||||||
|
430 X=INT(RND(1)*3+1)
|
||||||
|
440 REM ON X GOTO 790,860,910
|
||||||
|
441 IF X==1 THEN GOTO 790
|
||||||
|
442 IF X==2 THEN GOTO 860
|
||||||
|
443 IF X==3 THEN GOTO 910
|
||||||
|
450 X=INT(RND(1)*2+1)
|
||||||
|
460 REM ON X GOTO 790,860
|
||||||
|
470 IF S<>V THEN GOTO 490
|
||||||
|
480 IF Z==1 THEN GOTO 520
|
||||||
|
485 Q=1
|
||||||
|
486 GOTO 500
|
||||||
|
490 IF W(R,S+1)<>0 THEN GOTO 520
|
||||||
|
500 X=INT(RND(1)*2+1)
|
||||||
|
510 REM ON X GOTO 790,910
|
||||||
|
511 IF X==1 THEN GOTO 790
|
||||||
|
512 IF X==2 THEN GOTO 910
|
||||||
|
520 GOTO 790
|
||||||
|
530 IF S-1==0 THEN GOTO 670
|
||||||
|
540 IF W(R,S-1)<>0 THEN GOTO 670
|
||||||
|
545 IF R==H THEN GOTO 610
|
||||||
|
547 IF W(R+1,S)<>0 THEN GOTO 610
|
||||||
|
550 IF S<>V THEN GOTO 560
|
||||||
|
552 IF Z==1 THEN GOTO 590
|
||||||
|
554 Q=1
|
||||||
|
555 GOTO 570
|
||||||
|
560 IF W(R,S+1)<>0 THEN GOTO 590
|
||||||
|
570 X=INT(RND(1)*3+1)
|
||||||
|
580 REM ON X GOTO 820,860,910
|
||||||
|
581 IF X==0 THEN GOTO 820
|
||||||
|
582 IF X==1 THEN GOTO 860
|
||||||
|
583 IF X==2 THEN GOTO 910
|
||||||
|
590 X=INT(RND(1)*2+1)
|
||||||
|
600 REM ON X GOTO 820,860
|
||||||
|
601 IF X==1 THEN GOTO 820
|
||||||
|
602 IF X==2 THEN GOTO 860
|
||||||
|
610 IF S<>V THEN GOTO 630
|
||||||
|
620 IF Z==1 THEN GOTO 660
|
||||||
|
625 Q=1
|
||||||
|
626 GOTO 640
|
||||||
|
630 IF W(R,S+1)<>0 THEN GOTO 660
|
||||||
|
640 X=INT(RND(1)*2+1)
|
||||||
|
650 REM ON X GOTO 820,910
|
||||||
|
651 IF X==0 THEN GOTO 820
|
||||||
|
652 IF X==1 THEN GOTO 910
|
||||||
|
660 GOTO 820
|
||||||
|
670 IF R==H THEN GOTO 740
|
||||||
|
680 IF W(R+1,S)<>0 THEN GOTO 740
|
||||||
|
685 IF S<>V THEN GOTO 700
|
||||||
|
690 IF Z==1 THEN GOTO 730
|
||||||
|
695 Q=1
|
||||||
|
696 GOTO 830
|
||||||
|
700 IF W(R,S+1)<>0 THEN GOTO 730
|
||||||
|
710 X=INT(RND(1)*2+1)
|
||||||
|
720 REM ON X GOTO 860,910
|
||||||
|
721 IF X==0 THEN GOTO 860
|
||||||
|
722 IF X==1 THEN GOTO 910
|
||||||
|
730 GOTO 860
|
||||||
|
740 IF S<>V THEN GOTO 760
|
||||||
|
750 IF Z==1 THEN GOTO 780
|
||||||
|
755 Q=1
|
||||||
|
756 GOTO 770
|
||||||
|
760 IF W(R,S+1)<>0 THEN GOTO 780
|
||||||
|
770 GOTO 910
|
||||||
|
780 GOTO 1000
|
||||||
|
790 W(R-1,S)=C
|
||||||
|
800 C=C+1
|
||||||
|
801 V(R-1,S)=2
|
||||||
|
802 R=R-1
|
||||||
|
810 IF C==H*V+1 THEN GOTO 1010
|
||||||
|
815 Q=0
|
||||||
|
816 GOTO 260
|
||||||
|
820 W(R,S-1)=C
|
||||||
|
830 C=C+1
|
||||||
|
840 V(R,S-1)=1
|
||||||
|
841 S=S-1
|
||||||
|
842 IF C==H*V+1 THEN GOTO 1010
|
||||||
|
850 Q=0
|
||||||
|
851 GOTO 260
|
||||||
|
860 W(R+1,S)=C
|
||||||
|
870 C=C+1
|
||||||
|
871 IF V(R,S)==0 THEN GOTO 880
|
||||||
|
875 V(R,S)=3
|
||||||
|
876 GOTO 890
|
||||||
|
880 V(R,S)=2
|
||||||
|
890 R=R+1
|
||||||
|
900 IF C==H*V+1 THEN GOTO 1010
|
||||||
|
905 GOTO 530
|
||||||
|
910 IF Q==1 THEN GOTO 960
|
||||||
|
920 W(R,S+1)=C
|
||||||
|
921 C=C+1
|
||||||
|
922 IF V(R,S)==0 THEN GOTO 940
|
||||||
|
930 V(R,S)=3
|
||||||
|
931 GOTO 950
|
||||||
|
940 V(R,S)=1
|
||||||
|
950 S=S+1
|
||||||
|
951 IF C==H*V+1 THEN GOTO 1010
|
||||||
|
955 GOTO 260
|
||||||
|
960 Z=1
|
||||||
|
970 IF V(R,S)==0 THEN GOTO 980
|
||||||
|
975 V(R,S)=3
|
||||||
|
976 Q=0
|
||||||
|
977 GOTO 1000
|
||||||
|
980 V(R,S)=1
|
||||||
|
981 Q=0
|
||||||
|
982 R=1
|
||||||
|
983 S=1
|
||||||
|
984 GOTO 250
|
||||||
|
1000 GOTO 210
|
||||||
|
1010 FOR J=1 TO V
|
||||||
|
1011 PRINT "I";
|
||||||
|
1012 FOR I=1 TO H
|
||||||
|
1013 IF V(I,J)<2 THEN GOTO 1030
|
||||||
|
1020 PRINT " ";
|
||||||
|
1021 GOTO 1040
|
||||||
|
1030 PRINT " I";
|
||||||
|
1040 NEXT
|
||||||
|
1041 PRINT
|
||||||
|
1043 FOR I=1 TO H
|
||||||
|
1045 IF V(I,J)==0 THEN GOTO 1060
|
||||||
|
1050 IF V(I,J)==2 THEN GOTO 1060
|
||||||
|
1051 PRINT ": ";
|
||||||
|
1052 GOTO 1070
|
||||||
|
1060 PRINT ":--";
|
||||||
|
1070 NEXT
|
||||||
|
1071 PRINT "."
|
||||||
|
1072 NEXT
|
||||||
|
1073 END
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
# 99 bottles of beer in Brainf*ck
|
# 99 bottles of beer in Brainf*ck
|
||||||
# Copyright (C) 2008 Raphael Bois
|
# Copyright (C) 2008 Raphael Bois
|
||||||
# 1671 brainf*ck instructions.
|
# 1671 brainf*ck instructions
|
||||||
# Published under GPL v2
|
# Published under GPL v2
|
||||||
|
|
||||||
Initialization
|
Initialization
|
||||||
@@ -98,7 +98,7 @@ Go back to (7) with final initialization step (remove 1 to all bytes)
|
|||||||
[>] at (20)
|
[>] at (20)
|
||||||
|
|
||||||
+>+>[->+<<-<-
|
+>+>[->+<<-<-
|
||||||
print ' on the wall' DOT LF LF
|
print ' on the wall' DOT LF
|
||||||
<<<. ' '
|
<<<. ' '
|
||||||
<<<----. 'o'
|
<<<----. 'o'
|
||||||
-. 'n'
|
-. 'n'
|
||||||
@@ -114,7 +114,7 @@ Go back to (7) with final initialization step (remove 1 to all bytes)
|
|||||||
>---------- ---------- ---------- -- sets (15) to 'N'
|
>---------- ---------- ---------- -- sets (15) to 'N'
|
||||||
|
|
||||||
>>>++.-- DOT
|
>>>++.-- DOT
|
||||||
>.. LF LF
|
>. LF
|
||||||
>>>] at (22)
|
>>>] at (22)
|
||||||
|
|
||||||
>>>[->[-]<<<<<<<[<]<[-]>>[>]>>>>>]+ if end of song reset bottles counter
|
>>>[->[-]<<<<<<<[<]<[-]>>[>]>>>>>]+ if end of song reset bottles counter
|
||||||
|
|||||||
Reference in New Issue
Block a user