mirror of
https://github.com/inexorabletash/jsbasic.git
synced 2024-12-21 16:30:19 +00:00
Update some URLs
This commit is contained in:
parent
dd01e4c9f1
commit
6c7f7e9eec
@ -31,7 +31,7 @@ By <a target=_blank href="mailto:inexorabletash@gmail.com">Joshua Bell</a>
|
||||
|
||||
<p>Related projects:
|
||||
<a href="../jslogo">Logo in Javascript</a>
|
||||
| <a href="http://calormen.com/vnIIc">Streaming video to an Apple II - vnIIc</a>
|
||||
| <a href="https://a2stuff.github.io/vnIIc">Streaming video to an Apple II - vnIIc</a>
|
||||
</p>
|
||||
|
||||
<br style="clear: both;">
|
||||
|
@ -11,7 +11,7 @@
|
||||
11 REM something more exciting.
|
||||
12
|
||||
13 REM You can run this program via the URL below
|
||||
14 REM https://www.calormen.com/jsbasic/.
|
||||
14 REM https://inexorabletash.github.io/jsbasic/
|
||||
16 REM
|
||||
18 HOME
|
||||
19 HGR
|
||||
|
@ -1,142 +1,142 @@
|
||||
0 REM
|
||||
1 REM Newsgroups: comp.sys.apple2
|
||||
2 REM From: mad.scientist.jr@gmail.com
|
||||
3 REM Message-ID: <1193160910.224728.270640@z24g2000prh.googlegroups.com>
|
||||
4 REM Subject: Re: woz' original "brick out" - source code , paddles
|
||||
5 REM Date: Tue, 23 Oct 2007 17:35:10 -0000
|
||||
6 REM
|
||||
|
||||
10 REM APPLE II SIMPLE PONG V4
|
||||
20 REM PASTE INTO Joshua Bell s EMULATOR AT www.calormen.com/Applesoft/
|
||||
25 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
30 REM TITLE SCREEN + PROMPT FOR CONTROLS
|
||||
35 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
40 TEXT : REM ENTER TEXT MODE
|
||||
45 HOME : REM CLEAR TEXT SCREEN
|
||||
49 PRINT "APPLE II SIMPLE PONG V4"
|
||||
50 PRINT
|
||||
51 PRINT "version 1 by aiiadict"
|
||||
52 PRINT "tweaks by Mad Scientist Jr"
|
||||
54 PRINT
|
||||
55 PRINT "During game press Q to quit."
|
||||
56 PRINT
|
||||
58 INPUT "TYPE K FOR KEYS (A/Z, K/M) OR P FOR PADDLES OR Q TO QUIT? ";C$
|
||||
60 IF C$ <> "K" AND C$ <> "P" AND C$ <> "Q" THEN GOTO 58
|
||||
62 IF C$ = "Q" THEN GOTO 9000
|
||||
65 REM
|
||||
70 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
75 REM DRAW FIELD AND INITIALIZE GAME
|
||||
80 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
85 GR: REM ENTER GRAPHIC MODE
|
||||
90 COLOR= 7: VLIN 0,39 AT 0: VLIN 0,39 AT 39
|
||||
95 HLIN 0,39 AT 0: HLIN 0,39 AT 39
|
||||
100 bx = 10:by = 10:ox = 10:oy = 10: REM BALL START POSITION
|
||||
102 dx = 1: dy = - 1: REM BALL DIRECTION
|
||||
104 p1 = 10: o1 = 10: REM PLAYER 1 START POSITION
|
||||
106 p2 = 10: o2 = 10: REM PLAYER 2 START POSITION
|
||||
120 PL = 8: REM PADDLE LENGTH
|
||||
130 REM
|
||||
145 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
150 REM BEGIN MAIN GAME LOOP
|
||||
155 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
196 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
197 REM DRAW PADDLE1
|
||||
198 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
200 IF o1 <> p1 THEN COLOR= 0: VLIN o1,o1 + PL AT 3
|
||||
210 COLOR= 7: VLIN p1,p1 + PL AT 3
|
||||
296 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
297 REM DRAW PADDLE2
|
||||
298 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
300 IF o2 <> p2 THEN COLOR= 0: VLIN o2,o2 + PL AT 36
|
||||
310 COLOR= 7: VLIN p2,p2 + PL AT 36
|
||||
399 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
400 REM DRAW AND MOVE BALL
|
||||
401 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
402 IF ox <> bx OR oy <> by THEN COLOR= 0: PLOT ox,oy: PLOT ox,oy + 1
|
||||
410 COLOR= 5: PLOT bx,by: PLOT bx,by + 1
|
||||
416 ox = bx:oy = by
|
||||
830 bx = bx + dx
|
||||
835 IF SCRN( bx,by) > 0 THEN dx = - dx
|
||||
840 by = by + dy
|
||||
845 IF SCRN( bx,by) > 0 THEN dy = - dy
|
||||
850 IF bx < 1 THEN bx = 1
|
||||
860 IF bx > 38 THEN bx = 38
|
||||
870 IF by < 1 THEN by = 1
|
||||
880 IF by > 38 THEN by = 38
|
||||
881 REM
|
||||
882 REM ----------------------------------------
|
||||
883 REM SAVE OLD SCREEN POSITION
|
||||
884 REM ----------------------------------------
|
||||
885 o1 = p1
|
||||
886 o2 = p2
|
||||
889 REM
|
||||
900 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
901 REM GET PLAYER INPUT
|
||||
902 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
903 IF PEEK ( - 16384) > 127 THEN GET K$: REM SEE IF KEY(S) PRESSED. NEEDS FIX FOR MULTI KEY SIMULTANEOUS INPUT
|
||||
904 IF C$ <> "K" THEN GOTO 921
|
||||
905 REM
|
||||
906 REM ----------------------------------------
|
||||
907 REM KEYBOARD INPUT
|
||||
908 REM NOTE: NEEDS FIX TO DETECT MULTI KEYPRESSES
|
||||
909 REM ----------------------------------------
|
||||
912 IF K$ = "A" THEN p1 = p1 - 1
|
||||
914 IF K$ = "Z" THEN p1 = p1 + 1
|
||||
916 IF K$ = "K" THEN p2 = p2 - 1
|
||||
918 IF K$ = "M" THEN p2 = p2 + 1
|
||||
920 GOTO 955
|
||||
921 IF C$ <> "P" THEN GOTO 947
|
||||
922 REM
|
||||
923 REM ----------------------------------------
|
||||
925 REM PADDLE INPUT
|
||||
927 REM ----------------------------------------
|
||||
930 REM simple (non-absolute) paddle input:
|
||||
931 REM if pdl(0) > 200 then p1 = p1 + 1
|
||||
932 REM if pdl(0) < 55 then p1 = p1 - 1
|
||||
933 REM if pdl(1) > 200 then p2 = p2 + 1
|
||||
934 REM if pdl(1) < 55 then p2 = p2 - 1
|
||||
943 REM realtime (absolute position) paddle input:
|
||||
944 GOSUB 3000: REM PLAYER 1
|
||||
945 GOSUB 4000: REM PLAYER 2
|
||||
947 REM
|
||||
948 REM ----------------------------------------
|
||||
949 REM SEE IF PLAYER PRESSED Q TO QUIT
|
||||
950 REM ----------------------------------------
|
||||
951 IF K$ = "Q" THEN GOTO 9000
|
||||
954 REM
|
||||
955 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
956 REM MAKE SURE PADDLES DONT GO OFF SCREEN
|
||||
958 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
960 IF p1 < 2 THEN p1 = 2
|
||||
970 IF p1 > 28 THEN p1 = 28
|
||||
980 IF p2 < 2 THEN p2 = 2
|
||||
990 IF p2 > 28 THEN p2 = 28
|
||||
1000 REM
|
||||
1010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
1020 REM CONTINUE GAME LOOP
|
||||
1030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
1040 GOTO 150
|
||||
3000 REM
|
||||
3010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
3020 REM GET SCREEN POSITION FROM PADDLE 1 INPUT
|
||||
3030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
3040 p1 = 26 * pdl(0)
|
||||
3050 p1 = p1 / 255
|
||||
3060 p1 = p1 + 2
|
||||
3070 RETURN
|
||||
4000 REM
|
||||
4010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
4020 REM GET SCREEN POSITION FROM PADDLE 2 INPUT
|
||||
4030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
4040 p2 = 26 * pdl(1)
|
||||
4050 p2 = p2 / 255
|
||||
4060 p2 = p2 + 2
|
||||
4070 RETURN
|
||||
9000 REM
|
||||
9010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
9020 REM QUIT GAME
|
||||
9030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
9040 TEXT : REM HOME
|
||||
9045 PRINT
|
||||
9050 PRINT "FINISHED APPLE II SIMPLE PONG V4."
|
||||
9060 END
|
||||
0 REM
|
||||
1 REM Newsgroups: comp.sys.apple2
|
||||
2 REM From: mad.scientist.jr@gmail.com
|
||||
3 REM Message-ID: <1193160910.224728.270640@z24g2000prh.googlegroups.com>
|
||||
4 REM Subject: Re: woz' original "brick out" - source code , paddles
|
||||
5 REM Date: Tue, 23 Oct 2007 17:35:10 -0000
|
||||
6 REM
|
||||
|
||||
10 REM APPLE II SIMPLE PONG V4
|
||||
20 REM PASTE INTO Joshua Bell s EMULATOR AT inexorabletash.github.io/jsbasic/
|
||||
25 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
30 REM TITLE SCREEN + PROMPT FOR CONTROLS
|
||||
35 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
40 TEXT : REM ENTER TEXT MODE
|
||||
45 HOME : REM CLEAR TEXT SCREEN
|
||||
49 PRINT "APPLE II SIMPLE PONG V4"
|
||||
50 PRINT
|
||||
51 PRINT "version 1 by aiiadict"
|
||||
52 PRINT "tweaks by Mad Scientist Jr"
|
||||
54 PRINT
|
||||
55 PRINT "During game press Q to quit."
|
||||
56 PRINT
|
||||
58 INPUT "TYPE K FOR KEYS (A/Z, K/M) OR P FOR PADDLES OR Q TO QUIT? ";C$
|
||||
60 IF C$ <> "K" AND C$ <> "P" AND C$ <> "Q" THEN GOTO 58
|
||||
62 IF C$ = "Q" THEN GOTO 9000
|
||||
65 REM
|
||||
70 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
75 REM DRAW FIELD AND INITIALIZE GAME
|
||||
80 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
85 GR: REM ENTER GRAPHIC MODE
|
||||
90 COLOR= 7: VLIN 0,39 AT 0: VLIN 0,39 AT 39
|
||||
95 HLIN 0,39 AT 0: HLIN 0,39 AT 39
|
||||
100 bx = 10:by = 10:ox = 10:oy = 10: REM BALL START POSITION
|
||||
102 dx = 1: dy = - 1: REM BALL DIRECTION
|
||||
104 p1 = 10: o1 = 10: REM PLAYER 1 START POSITION
|
||||
106 p2 = 10: o2 = 10: REM PLAYER 2 START POSITION
|
||||
120 PL = 8: REM PADDLE LENGTH
|
||||
130 REM
|
||||
145 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
150 REM BEGIN MAIN GAME LOOP
|
||||
155 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
196 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
197 REM DRAW PADDLE1
|
||||
198 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
200 IF o1 <> p1 THEN COLOR= 0: VLIN o1,o1 + PL AT 3
|
||||
210 COLOR= 7: VLIN p1,p1 + PL AT 3
|
||||
296 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
297 REM DRAW PADDLE2
|
||||
298 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
300 IF o2 <> p2 THEN COLOR= 0: VLIN o2,o2 + PL AT 36
|
||||
310 COLOR= 7: VLIN p2,p2 + PL AT 36
|
||||
399 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
400 REM DRAW AND MOVE BALL
|
||||
401 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
402 IF ox <> bx OR oy <> by THEN COLOR= 0: PLOT ox,oy: PLOT ox,oy + 1
|
||||
410 COLOR= 5: PLOT bx,by: PLOT bx,by + 1
|
||||
416 ox = bx:oy = by
|
||||
830 bx = bx + dx
|
||||
835 IF SCRN( bx,by) > 0 THEN dx = - dx
|
||||
840 by = by + dy
|
||||
845 IF SCRN( bx,by) > 0 THEN dy = - dy
|
||||
850 IF bx < 1 THEN bx = 1
|
||||
860 IF bx > 38 THEN bx = 38
|
||||
870 IF by < 1 THEN by = 1
|
||||
880 IF by > 38 THEN by = 38
|
||||
881 REM
|
||||
882 REM ----------------------------------------
|
||||
883 REM SAVE OLD SCREEN POSITION
|
||||
884 REM ----------------------------------------
|
||||
885 o1 = p1
|
||||
886 o2 = p2
|
||||
889 REM
|
||||
900 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
901 REM GET PLAYER INPUT
|
||||
902 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
903 IF PEEK ( - 16384) > 127 THEN GET K$: REM SEE IF KEY(S) PRESSED. NEEDS FIX FOR MULTI KEY SIMULTANEOUS INPUT
|
||||
904 IF C$ <> "K" THEN GOTO 921
|
||||
905 REM
|
||||
906 REM ----------------------------------------
|
||||
907 REM KEYBOARD INPUT
|
||||
908 REM NOTE: NEEDS FIX TO DETECT MULTI KEYPRESSES
|
||||
909 REM ----------------------------------------
|
||||
912 IF K$ = "A" THEN p1 = p1 - 1
|
||||
914 IF K$ = "Z" THEN p1 = p1 + 1
|
||||
916 IF K$ = "K" THEN p2 = p2 - 1
|
||||
918 IF K$ = "M" THEN p2 = p2 + 1
|
||||
920 GOTO 955
|
||||
921 IF C$ <> "P" THEN GOTO 947
|
||||
922 REM
|
||||
923 REM ----------------------------------------
|
||||
925 REM PADDLE INPUT
|
||||
927 REM ----------------------------------------
|
||||
930 REM simple (non-absolute) paddle input:
|
||||
931 REM if pdl(0) > 200 then p1 = p1 + 1
|
||||
932 REM if pdl(0) < 55 then p1 = p1 - 1
|
||||
933 REM if pdl(1) > 200 then p2 = p2 + 1
|
||||
934 REM if pdl(1) < 55 then p2 = p2 - 1
|
||||
943 REM realtime (absolute position) paddle input:
|
||||
944 GOSUB 3000: REM PLAYER 1
|
||||
945 GOSUB 4000: REM PLAYER 2
|
||||
947 REM
|
||||
948 REM ----------------------------------------
|
||||
949 REM SEE IF PLAYER PRESSED Q TO QUIT
|
||||
950 REM ----------------------------------------
|
||||
951 IF K$ = "Q" THEN GOTO 9000
|
||||
954 REM
|
||||
955 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
956 REM MAKE SURE PADDLES DONT GO OFF SCREEN
|
||||
958 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
960 IF p1 < 2 THEN p1 = 2
|
||||
970 IF p1 > 28 THEN p1 = 28
|
||||
980 IF p2 < 2 THEN p2 = 2
|
||||
990 IF p2 > 28 THEN p2 = 28
|
||||
1000 REM
|
||||
1010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
1020 REM CONTINUE GAME LOOP
|
||||
1030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
1040 GOTO 150
|
||||
3000 REM
|
||||
3010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
3020 REM GET SCREEN POSITION FROM PADDLE 1 INPUT
|
||||
3030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
3040 p1 = 26 * pdl(0)
|
||||
3050 p1 = p1 / 255
|
||||
3060 p1 = p1 + 2
|
||||
3070 RETURN
|
||||
4000 REM
|
||||
4010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
4020 REM GET SCREEN POSITION FROM PADDLE 2 INPUT
|
||||
4030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
4040 p2 = 26 * pdl(1)
|
||||
4050 p2 = p2 / 255
|
||||
4060 p2 = p2 + 2
|
||||
4070 RETURN
|
||||
9000 REM
|
||||
9010 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
9020 REM QUIT GAME
|
||||
9030 REM ++++++++++++++++++++++++++++++++++++++++
|
||||
9040 TEXT : REM HOME
|
||||
9045 PRINT
|
||||
9050 PRINT "FINISHED APPLE II SIMPLE PONG V4."
|
||||
9060 END
|
||||
|
Loading…
Reference in New Issue
Block a user