Willus.com
Home
|
Archive
|
About
CASSHOT1.BAS
(8418 bytes)
EMULATE AS:
DEFAULT TYPE (BASIC)
|
CMD program
|
Program on Disk
|
2-Disk Debug
|
Disk Download
SHOW BELOW AS:
BASIC program
(download)
|
Text File
(download)
|
Z-80 Program
(download)
|
EDTASM File
(download)
|
Graphic
(download)
|
Hex File
(download)
|
SCRIPSIT File
(download)
Return to TRS-80 software list.
100 REM * CASTLE SHOT * 120 CLEAR 50 140 DEFINT A-Z 160 A$ = "RB" 180 CLS 200 Z = 74 220 FOR Y = 17 TO 47 240 FOR X = Z TO 127 260 SET (X,Y) 280 NEXT X 300 IF Y < 23 THEN Z = Z + 2 320 NEXT Y 340 FOR X = 75 TO 123 STEP 4 360 SET (X,16) 380 SET (X+1,16) 400 NEXT X 420 Q = 0 440 FOR X = 95 TO 125 STEP 5 460 FOR Y = 47 TO 35 STEP -1 480 RESET (X,Y) 500 NEXT Y 520 NEXT X 540 FOR X = 95 TO 125 560 RESET (X,34) 580 NEXT X 600 REM WILL PRINT A$ INITIALS: PRINT@ 688, A$;"'S CASTLE"; 620 FOR X = 73 TO 100 640 SET (X,12) 660 SET (X,13) 680 NEXT X 700 FOR X = 85 TO 95 720 SET (X,14) 740 SET (X,15) 760 NEXT X 780 RESET (90,13) 800 RESET (91,13) 820 FOR Z = 1 TO 3 840 FOR X = 2 TO 14 860 FOR Y = 40 TO 43 880 SET (X,Y) 900 NEXT Y 920 NEXT X 940 FOR X = 3 TO 13 STEP 2 960 RESET (X,41) 980 NEXT X 1000 RESET (7,43) 1020 RESET (8,43) 1040 REM --- THIS MAKES THE CANNON RECOIL 1060 FOR X = 1 TO 100 : NEXT X 1080 RESET (73,12) 1100 RESET (73,13) 1120 RESET (74,12) 1140 RESET (74,13) 1160 SET (101,12) 1180 SET (101,13) 1200 SET (102,12) 1220 SET (102,13) 1240 FOR X = 1 TO 100 : NEXT X 1260 SET (74,12) 1280 SET (74,13) 1300 SET (73,12) 1320 SET (73,13) 1340 RESET (102,12) 1360 RESET (102,13) 1380 RESET (101,12) 1400 RESET (101,13) 1420 REM 1440 FOR X = 71 TO 2 STEP -1 1460 P = X - 73 1480 Y = P * P / 150 + 12 1500 SET (X,Y) 1520 SET (X-1,Y) 1540 RESET (X+1,Q) 1560 RESET (X,Q) 1580 Q = Y 1600 NEXT X 1620 PRINT@ 771, "KAPOW!"; 1640 GOSUB 1800 1660 FOR X = 1 TO 18 1680 RESET (X,45) 1700 RESET (X,36) 1720 RESET (X,37) 1740 NEXT X 1760 NEXT Z 1780 GOTO 1880 1800 FOR X = 1 TO 1000 1820 NEXT X 1840 RETURN 1860 REM SNOOPY BY T.N. KASPER. JANUARY 5, 1978 1880 CLS 1900 FORA=14TO22:SET(A,0):NEXTA 1920 FORB=12TO15:SET(B,1):NEXTB 1940 FORC=21TO24:SET(C,1):NEXTC 1960 FORD=40TO45:SET(D,1):NEXTD 1980 FORE=10TO12:SET(E,2):NEXTE 2000 FORF=21TO25:SET(F,2):NEXTF 2020 FORG=36TO39:SET(G,2):NEXTG 2040 FORH=45TO47:SET(H,2):NEXTH 2060 FORI=9TO10:SET(I,3):NEXTI 2080 SET(12,3) 2100 FORJ=23TO35:SET(J,3):NEXTJ 2120 FORK=45TO49:SET(K,3):NEXTK 2140 SET(7,4):SET(8,4):SET(13,4):SET(23,4) 2160 FORL=50TO56:SET(L,4):NEXTL 2180 SET(5,5):SET(6,5):SET(14,5):SET(15,5):SET(21,5):SET(22,5) 2200 FORM=53TO57:SET(M,5):NEXTM 2220 SET(4,6):SET(16,6):SET(19,6):SET(20,6):SET(21,6):SET(27,6) 2240 SET(28,6) 2260 FORN=53TO57:SET(N,6):NEXTN 2280 SET(3,7):FORP=16TO20:SET(P,7):NEXTP 2300 FORQ=52TO56:SET(Q,7):NEXTQ 2320 SET(2,8):SET(19,8):SET(50,8):SET(51,8) 2340 SET(2,9):SET(19,9):FORR=28TO49:SET(R,9):NEXTR 2360 SET(18,13):SET(25,13) 2380 SET(1,10):SET(18,10):SET(27,10):SET(1,11):SET(8,11):SET(9,11):SET(10,11) 2400 SET(18,11):SET(26,11):SET(26,11):SET(1,12):SET(7,12):SET(11,12) 2420 SET(18,12) 2440 SET(25,12):SET(1,13):SET(6,13):SET(7,13):SET(12,13) 2460 SET(18,13):SET(25,13) 2480 SET(1,14):SET(7,14):SET(12,14):SET(13,14) 2500 SET(18,14):SET(25,14) 2520 SET(2,15):SET(8,15):SET(12,15):SET(19,15) 2540 SET(26,15) 2560 SET(2,16):SET(9,16):SET(10,16):SET(11,16):SET(19,16) 2580 SET(27,16):SET(3,17):SET(19,17) 2600 FORA=28TO37:SET(A,17):NEXTA:SET(46,17):SET(47,17):SET(48,17) 2620 FORA=51TO54:SET(A,17):NEXTA 2640 SET(4,18):SET(20,18):SET(21,18):SET(22,18) 2660 SET(36,18):SET(44,18):SET(45,18):SET(50,18) 2680 SET(51,18):SET(54,18) 2700 SET(5,19):SET(22,19):SET(35,19):SET(44,19):SET(53,19) 2720 SET(6,20):SET(7,20):SET(22,20):SET(33,20):SET(43,20) 2740 SET(49,20):SET(53,20):SET(8,21):SET(9,21) 2760 FORA=24TO33:SET(A,21):NEXTA:SET(42,21) 2780 FORA=49TO52:SET(A,21):NEXTA 2800 FORA=10TO12:SET(A,22):NEXTA 2820 SET(26,22):SET(27,22):SET(31,22):SET(32,22) 2840 SET(41,22):SET(48,22) 2860 FORA=13TO25:SET(A,23):NEXTA:SET(32,23) 2880 SET(40,23):SET(47,23) 2900 SET(25,24):SET(33,24):SET(39,24):SET(46,24) 2920 SET(25,25):FORA=34TO38:SET(A,25):NEXTA:SET(45,25) 2940 SET(26,26):SET(44,26) 2960 SET(27,30):SET(33,30):SET(46,30):SET(47,30) 2980 SET(38,26):SET(39,26):SET(43,26) 3000 SET(27,27):SET(28,27):SET(38,27):SET(39,27):SET(43,27) 3020 SET(28,28):FORA=40TO43:SET(A,28):NEXTA 3040 SET(28,29):SET(32,29):SET(43,29):SET(44,29):SET(45,29) 3060 SET(27,31):SET(29,31):SET(34,31):SET(48,31):SET(49,31) 3080 SET(26,32):SET(30,32):SET(35,32):SET(50,32) 3100 SET(26,33):SET(31,33):SET(35,33):SET(36,33):SET(51,33) 3120 SET(26,34):SET(31,34):SET(36,34):SET(37,34):SET(51,34) 3140 SET(25,35):SET(31,35):SET(38,35):SET(50,35) 3160 SET(25,36):SET(31,36):SET(39,36):SET(49,36) 3180 SET(25,37):SET(29,37):SET(37,37):SET(38,37):SET(48,37) 3200 SET(26,38):FORA=30TO33:SET(A,38):NEXTA 3220 SET(38,38):SET(47,38) 3240 FORA=27TO29:SET(A,39):NEXTA 3260 FORA=33TO37:SET(A,39):NEXTA 3280 FORA=44TO46:SET(A,39):NEXTA 3300 SET(30,40):SET(31,40):SET(33,40):SET(41,40):SET(46,40) 3320 SET(32,41):SET(33,41):SET(41,41):SET(46,41) 3340 SET(33,42):SET(41,42) 3360 FORA=46TO56:SET(A,42):NEXTA 3380 SET(33,43):SET(41,43):SET(56,43):SET(57,43) 3400 SET(32,44) 3420 FORA=41TO51:SET(A,44):NEXTA 3440 SET(56,44):SET(57,44) 3460 SET(31,45):SET(32,45) 3480 FORA=51TO56:SET(A,45):NEXTA 3500 SET(31,46):SET(32,46):SET(51,46):SET(52,46) 3520 FORA=32TO51:SET(A,47):NEXTA 3540 PRINT@271," * * * * * * CURSE YOU RED BARON !!!!"; 3560 PRINT@936,"TOM KASPER 5 JAN 78"; 3580 FORN=0TO5000:NEXTN 3600 REM * TRS-80 GRAPHICS STAR PROGRAM * 3620 REM * DRAW INVERTED V * 3640 CLEAR 50 : DEFINT A-Z 3660 CLS 3680 FOR Y=0 TO 2 3700 FOR A = 0 TO 47-Y 3720 SET(64+A,Y+A) 3740 SET(63-A,Y+A) 3760 NEXT A 3780 NEXT Y 3800 REM * DRAW HORIZONTAL LINE * 3820 FOR X=0 TO 127 3840 SET(X,20) 3860 NEXT X 3880 REM * DRAW LEFT DESCENDING DIAGONAL * 3900 B = 4 3920 FOR X=0 TO 127 3940 SET(X,20+X/B) 3960 IF 20+X/B > 47 THEN 4020 3980 NEXT X 4000 REM * DRAW RIGHT DESCENDING DIAGONAL * 4020 FOR X=127 TO 0 STEP -1 4040 SET(X,20+(127-X)/B) 4060 IF 20+(127-X)/B > 47 THEN 4120 4080 NEXT X 4100 REM * PAUSE AND REVERSE SCREEN * 4120 FOR X=0 TO 3000 : NEXT X 4140 REM * PRINT LOGO * 4160 CLS:PRINT@35,"FROM DUNGEONS & DRAGONS"; 4180 PRINT@142,"****** *****";:PRINT@80,"***"; 4200 PRINT@203,"********************"; 4220 PRINT@266,"***************** ****"; 4240 PRINT@332,"********";:PRINT@399,"****"; 4260 FORX=61TO66:SET(X,15):NEXTX:FORX=58TO69:SET(X,16):NEXTX 4280 FORX=55TO72:SET(X,17):NEXTX:FORX=52TO75:SET(X,18):NEXTX 4300 FORY=19TO30:FORX=52TO53:SET(X,Y):NEXTX:NEXTY:FORX=74TO75:SET(X,19):NEXTX 4320 FORY=27TO30:FORX=74TO75:SET(X,Y):NEXTX:NEXTY 4340 FORY=30TO31:FORX=54TO55:SET(X,Y):NEXTX:FORX=72TO73:SET(X,Y):NEXTX:NEXTY 4360 FORY=31TO33:FORX=56TO57:SET(X,Y):NEXTX:FORX=70TO71:SET(X,Y):NEXTX:NEXTY 4380 FORX=54TO73:SET(X,34):NEXTX:FORX=52TO55:SET(X,35):NEXTX:FORX=72TO75 4400 SET(X,35):NEXTX:FORX=50TO53:SET(X,36):NEXTX:FORX=74TO77:SET(X,36):NEXTX 4420 FORX=71TO75:SET(X,22):NEXTX:FORY=21TO25:FORX=78TO79:SET(X,Y):NEXTX:NEXTY 4440 FORY=22TO24STEP2:FORX=56TO63:SET(X,Y):NEXTX:NEXTY:FORX=56TO57:SET(X,23):NEXTX 4460 FORX=60TO61:SET(X,23):NEXTX:FORX=62TO65:FORY=21TO25STEP4:SET(X,Y):NEXTY:NEXTX 4480 FORX=64TO79:FORY=20TO26STEP6:SET(X,Y):NEXTY:NEXTX 4500 FORY=22TO24:FORX=18TO30:SET(X,Y):NEXTX:NEXTY:FORX=19TO29STEP2:RESET(X,23):NEXTX 4520 FORX=19TO29:SET(X,25):SET(X,33):NEXTX:FORX=20TO28:SET(X,26):SET(X,32):NEXTX 4540 FORX=21TO27:SET(X,27):NEXTX:FORX=22TO26:SET(X,28):NEXTX 4560 FORX=23TO25:FORY=29TO31:SET(X,Y):NEXTY:NEXTX 4580 FORX=103TO104:FORY=15TO36:SET(X,Y):NEXTY:NEXTX:FORX=103TO104:RESET(X,16):NEXTX 4600 FORY=15TO17:FORX=101TO102:SET(X,Y):NEXTX:FORX=105TO106:SET(X,Y):NEXTX:NEXTY 4620 FORX=94TO113:SET(X,20):NEXTX:FORX=101TO106:SET(X,35):NEXTX 4640 FORX=87TO93:SET(X,30):NEXTX:FORX=114TO120:SET(X,30):NEXTX:FORX=98TO109 4660 SET(X,34):NEXTX:FORX=89TO96:SET(X,31):NEXTX:FORX=111TO118:SET(X,31):NEXTX 4680 FORX=91TO99:SET(X,32):NEXTX:FORX=108TO116:SET(X,32):NEXTX 4700 FORX=94TO101:SET(X,33):NEXTX:FORX=106TO113:SET(X,33):NEXTX 4720 FOR X=0 TO 3000:NEXT X 4740 CLS:FORL=1TO24:READY,C:FORM=1TOC:READA,B:FORN=ATOB 4760 SET(N,Y):NEXTN:NEXTM:NEXTL 4780 DATA5,10,15,20,24,29,36,39,45,50,54,61,74,81,84,89,94,101,104,105,110 4800 DATA111 4820 DATA6,15,14,15,20,21,24,25,29,30,35,36,39,40,44,45,50,51,54,55,77,78 4840 DATA84,85,89,90,94,95,104,105,110,111,7,13,14,15,24,25,30,31,34,35,40 4860 DATA41,44,45,54,55,77,78,84,85,90,91,94,95,104,105,109,110,8,13,14,15 4880 DATA24,25,30,31,34,35,40,41,44,45,54,55,77,78,84,85,90,91,94,95,104 4900 DATA105,108,109,9,13,15,20,24,25,29,30,34,35,40,41,44,45,54,55,77,78 4920 DATA84,85,89,90,94,95,104,105,107,108,10,9,20,21,24,29,34,41,44,45,54 4940 DATA59,77,78,84,88,94,99,104,107,11,12,20,21,24,25,34,35,40,41,44,45 4960 DATA54,55,77,78,84,85,88,89,94,95,104,105,108,109,12,14,14,15,20,21 4980 DATA24,25,34,35,40,41,44,45,50,51,54,55,77,78,84,85,89,90,94,95,104 5000 DATA105,109,110,13,12,15,20,24,25,34,35,40,41 5020 DATA45,50,54,61,77,78,84,85,90,91,94,101,104,105,110,111 5040 DATA30,1,10,58,31,2,9,53,92,97,32,2,9,53 5060 DATA72,115,33,2,10,58,70,117,34,2,41,45,69,119,35,2,43,47 5080 DATA70,117,36,2,45,49,72,115,37,3,47,51 5100 DATA71,81,93,96,38,2,49,53,70,79,39,2,51,65,69,77,40,1 5120 DATA45,79,41,1,41,80,42,1,39,81,43,1,41,80,44,1,44,79 5140 FORX=1TO5000:NEXTX 5160 CLEAR 50:CLS 5180 PRINT@ 960,"SANTA by Frederick Crane" 5200 PRINT"SOFTSIDE MAGAZINE / December 1978"; 5220 SET(55,13):SET(56,12):SET(57,11) 5240 FOR X=58 TO 64 STEP 2 5260 Y=(78-X)/2 5280 SET(X,Y):SET(X+1,Y) 5300 NEXT X 5320 FOR X=66 TO 74 5340 SET(X,6):NEXT X 5360 SET(74,7):SET(75,7) 5380 SET(76,7):SET(75,8):SET(76,8) 5400 FOR X=74 TO 77:FOR Y=9 TO 10:SET(X,Y) 5420 NEXT Y:NEXT X 5440 SET(70,7):SET(71,7) 5460 FOR X=68 TO 72:SET(X,X-59) 5480 NEXT X 5500 FOR X=54 TO 73:SET(X,14):SET(X,15) 5520 NEXT X:FOR Y=16 TO 19:SET(56,Y) 5540 SET(71,Y):NEXT Y 5560 SET(58,17):SET(59,17) 5580 SET(68,17):SET(69,17):SET(63,18) 5600 SET(64,18):FOR X=53 TO 74:SET(X,20) 5620 NEXT X 5640 FOR X=57 TO 70:FOR Y=21 TO 25:SET(X,Y) 5660 NEXT Y:NEXT X 5680 FOR X=59 TO 68:SET(X,26):NEXT X 5700 FOR X=61 TO 66:SET(X,27):NEXT X 5720 SET(63,28):SET(64,28) 5740 PRINT@ 729,"MERRY CHRISTMAS" 5760 FOR T=1 TO 1000:NEXT T 5780 SET(73,22):SET(74,23):SET(75,23) 5800 SET(75,22):SET(76,21):SET(77,20) 5820 SET(77,19):SET(77,18):SET(78,17) 5840 SET(78,17) 5860 FOR X=79 TO 97:SET(X,16):NEXT X 5880 SET(98,17):SET(99,18) 5900 SET(99,19):SET(99,20) 5920 FOR X=97 TO 79 STEP -1 5940 SET(X,21):NEXT X:SET(78,22) 5960 FOR Z=424 TO 430 STEP 3 5980 RESET(63,21):RESET(64,21):RESET(62,21) 6000 RESET(65,21):PRINT@ Z,"HO"; 6020 FOR T=1 TO 180:NEXT T 6040 SET(65,21):SET(62,21):SET(64,21) 6060 SET(63,21):FOR T=1 TO 70:NEXT T 6080 NEXT Z 6100 FOR T=1 TO 500:NEXT T: PRINT@ 424," "; 6120 FOR T=1 TO 500:NEXT T 6140 IF Z1<3 THEN Z1=Z1+1 : GOTO 5960 6160 GOTO 120 6180 END