[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Serial Comms, and a Lores Game Txt dump!
- Subject: Serial Comms, and a Lores Game Txt dump!
- From: "Bender MX" <no@morespam.com>
- Date: Sun, 25 Jul 2004 23:50:49 GMT
- Newsgroups: comp.sys.apple2
- Reply-to: "Bender MX" <no@morespam.com>
- Xref: g2news1.google.com comp.sys.apple2:2524
Hi All,
Thanks in no small part to everyone here and the high level of willingness
to assist each other, I am proud to offer a 'txt' dump of a game I had to
write for high-school computer class ... Back in oooh the 80's or so! :)
Without you CSA.2 Regulars, man I'd have no idea how to get my Apple //e
and my PC to communicate. So my hats off to you, and a hearty thanx!
One other thing I'm thinking of trying ... and tell me if I'm out to lunch
on
this or not, but wouldn't it be possible to do a txt dump of DOS 3.3
once it's loaded and save it to a textfile, like ADT.DMP so people with
systems (newly reaqcuainted, etc.) and no software would be able to
Hyper-Term DOS 3.3 over to the machine so they could INIT a
floppy Master disk?
Anyhow, without further adieu, Pac-Dodger - LOL enjoy!
-----Begin Applesoft Dumpfile-----
3D0G
NEW
REM -- Applesoft Basic File Pac-Dodger FollOWS
REM -- Upload it to your //e with your favorite Comm Program
REM -- If it doesn't upload properly, select wait after
REM -- a line is sent - set it to 650ns or higher as the
REM -- Applesoft line interpreter is slow on long lines, and
REM -- Pac-dodger has some long lines! :)
REM --
REM -- Craig Bower, July 25th, 2004
REM --
REM -- **** Enjoy! ****
130 REM
140 REM *******************
150 REM * *
160 REM * PAC-DODGER II *
170 REM * MAIN: PROGRAM *
180 REM * By Craig Bower *
190 REM * *
200 REM * (C) 1987 E/V/H/ *
210 REM * LABORATORIES: *
220 REM * *
230 REM *******************
240 REM
250 TEXT
260 HOME : INVERSE : PRINT "PAC-DODGER II": NORMAL
270 REM ** RESET A NONO - POKE WARMSTART LOCN'S
280 POKE 34,1
290 REM ONERR GOTO 1850
300 POKE - 16368,0
310 HS$ = "PACDUDE"
320 HS = 500: REM * COMPUTERS SCORE...
330 PRINT : PRINT "THE OBJECT OF THIS GAME IS TO GUIDE YOURPAC-DUDE ALONG
THE SCREEN, EATING DROPS OF ENERGY. THESE DROPS OF ENERGY ADD TO YOUR
ENERGY/SCORE COUNTER BY TEN..."
340 PRINT "YOU WILL ALSO HAVE TO WATCH OUT FOR THE BLOCKADES: THE BLOCKADES
WILL DRAIN ALL OF YOUR POWER TO MOVE, KILLING YOU..."
350 PRINT : PRINT "YOU MOVE CONSTANLY DOWNWARDS, AND WHEN YOU REACH THE
BOTTOM OF THE SCREEN, YOU ARE 'WRAPPED' AROUND BACK UP TO THE TOP.YOU CAN
MOVE USING THE FOLLOWING COM- MANDS:"
360 PRINT : PRINT "LEFT ARROW, ONE SPACE TO THE LEFT OF THE
SCREEN..."
370 PRINT "RIGHT ARROW, ONE SPACE TO THE RIGHT OF THE
SCREEN..."
380 PRINT "ESC(APE) PAUSES UNTIL ESCAPE IS PRESSED
AGAIN..."
385 GOSUB 2080
390 VTAB 24: HTAB 28: PRINT "'";: INVERSE : PRINT "SPACE BAR";: NORMAL :
PRINT "'";
400 IF PEEK ( - 16384) > 128 THEN 420
410 GOTO 400
420 GET A$: IF A$ < > CHR$ (32) THEN CALL - 1059: GOTO 400
430 HOME : PRINT : PRINT "YOU WILL BEGIN THE GAME WITH FIVE PAC- DUDES,
AND PLAY UNTIL THE LAST ONE HITS A BLOCKADE, DYING..."
440 PRINT : PRINT "TECH. INFO:"
450 PRINT : PRINT "BLOCKADES COLOR = RED (COLOR 01)"
460 PRINT "ENERGY DOTS = WHITE (COLOR 15)"
470 PRINT "YOUR PAC-DUDE = YELLOW (COLOR 13)"
480 PRINT : PRINT "ONCE YOU HAVE EATEN ALL OF THE ENERGY- DOTS ON THE
SCREEN, YOU WILL BE AWARDED A BONUS, AND WILL BE PUT ON A NEW BOARD WITH
MORE ENERGY DOTS, AND MORE DEADLY BLOCKADES..."
490 VTAB 24: HTAB 28: PRINT "'";: INVERSE : PRINT "SPACE BAR";: NORMAL :
PRINT "'";
500 POKE - 16368,0
510 IF PEEK ( - 16384) > 128 THEN 530
520 GOTO 510
530 GET A$: IF A$ < > CHR$ (32) THEN CALL - 1059: GOTO 510
540 GR : HOME
550 REM **
560 REM ** SET UP VARIABLES
570 REM **
580 LE = 1: REM * LEVEL =1
590 LI = 5: REM * LIVES =5
600 SC = 0
610 BL = 40: REM * INITIAL BLOCKS =40
620 ID = 10: REM * INITIAL DOTS =10
630 REM **
640 REM ** MAIN LOOP
650 REM **
660 GOSUB 760: REM * SET UP GAME BOARD
670 GOSUB 990: REM * PRINT INITIAL INFO
680 GOSUB 1100: REM * PLAY GAME!
690 GOSUB 1350: REM * NEW HI-SCORE ??
700 GOSUB 1460: REM * PLAY AGAIN ??
710 IF A$ = "Y" THEN RUN
720 TEXT : HOME : INVERSE : PRINT "PAC-DODGER II": NORMAL
730 PRINT : PRINT "THE END..."
740 VTAB 20: END
750 REM **
760 REM **
770 REM ** SET UP BOARD
780 REM **
790 ED = ID
800 COLOR= 1: REM * RED
810 REM ** DO BLOCKADES
820 FOR I = 1 TO BL
830 X = INT ( RND (1) * 39)
840 Y = INT ( RND (1) * 39)
850 PLOT X,Y
860 NEXT I
870 REM ** CLEAR LINE DOWN MIDDLE...
880 COLOR= 0: VLIN 0,39 AT 20
890 COLOR= 15: REM ** WHITE
900 REM ** DO ENERGY DOTS
910 FOR I = 1 TO ED
920 X = INT ( RND (1) * 39)
930 Y = INT ( RND (1) * 39)
940 IF SCRN( X,Y) = 1 THEN 920
950 PLOT X,Y
960 NEXT I
970 RETURN
980 REM
990 REM **
1000 REM ** PRINT INFO
1010 REM **
1020 INVERSE
1030 VTAB 21: HTAB 1: PRINT "PAC DODGER II:";: NORMAL : PRINT " "; CHR$
(91);"PLAYING!]"
1040 NORMAL
1050 VTAB 22: HTAB 1: PRINT "DOTS LEFT:";ED;" LIVES:";LI;" LEVEL:";LE;"
";
1060 VTAB 23: HTAB 1: PRINT "SCORE:";SC;" ";
1080 RETURN
1090 REM
1100 REM **
1110 REM ** PLAY GAME
1120 REM **
1125 GOSUB 2110
1126 RESTORE
1130 PX = 20:PY = 0
1140 COLOR= 13: IF SCRN( PX,PY) < > 0 THEN GOSUB 1710: REM ** DOT OR
BLOCK??
1150 IF FL = 1 THEN RETURN
1160 IF ED = 0 THEN GOSUB 1540: GOTO 1100: REM ** DONE, NEW BOARD
1170 IF FG = 1 THEN FG = 0: GOTO 1140: REM ** DUDE LOST!
1180 PLOT PX,PY
1190 IF PEEK ( - 16384) > 128 THEN VTAB 21: GET A$: GOSUB 1260
1200 Z = PEEK ( - 16336)
1210 IF KP = 1 THEN KP = 0: GOTO 1140
1220 COLOR= 0: PLOT PX,PY
1230 PY = PY + 1
1240 IF PY > 39 THEN PY = 0:SC = SC - 2: GOSUB 990
1250 GOTO 1140
1260 COLOR= 0: PLOT PX,PY: IF A$ = CHR$ (8) THEN PX = PX - 1
1270 IF A$ = CHR$ (21) THEN PX = PX + 1
1280 IF A$ = CHR$ (27) THEN GOSUB 1780: REM PAUSE...
1290 IF A$ = "!" THEN LI = LI + 2:SC = SC - 100
1300 IF PX < 0 THEN PX = 39
1310 IF PX > 39 THEN PX = 0
1320 KP = 1
1330 RETURN
1340 REM
1350 REM **
1360 REM ** NEW HS ??
1370 REM **
1380 IF SC < HS THEN 1430
1390 IF SC > HS THEN VTAB 22: PRINT "CONGRATULATIONS, YOU HAVE A NEW
HI-SCORE": PRINT "TYPE YOUR INITIALS: - - -"
1395 POKE - 16368,0: CALL - 1059: CALL - 1059
1400 VTAB 23: HTAB 21: GET I1$: PRINT I1$;: HTAB 23: GET I2$: PRINT I2$;:
HTAB 25: GET I3$: PRINT I3$;
1410 HS$ = I1$ + I2$ + I3$
1420 HS = SC
1430 HOME : PRINT "HI-SCORE: ";HS;" BY: ";HS$
1440 RETURN
1450 REM
1460 REM **
1470 REM ** PLAY AGAIN ??
1480 REM **
1490 VTAB 23: HTAB 1: PRINT "YOUR SCORE:";SC;
1500 VTAB 22: HTAB 1: PRINT "PLAY AGAIN (Y/N):";: GET A$
1510 IF A$ < > "Y" AND A$ < > "N" THEN CALL - 1059: GOTO 1500
1520 RETURN
1530 REM
1540 REM **
1550 REM ** DONE, NEW BOARD
1560 REM **
1570 HOME : VTAB 21: PRINT "CONGRATULATIONS, LEVEL ";LE;" IS DONE!"
1580 FOR I = 1 TO 1000: NEXT I
1590 BO = INT ((SC * .5))
1600 FOR I = BO TO 0 STEP - 1
1610 VTAB 22: HTAB 1: PRINT "SCORE:";SC;" <== ";: FLASH : PRINT "BONUS:";:
NORMAL : PRINT I;" "
1620 Z = PEEK ( - 16336) * PEEK ( - 16336)
1630 SC = SC + 1
1640 NEXT I
1650 FOR ZZ = 1 TO 3: FOR BUZZ = 1 TO 15:P = PEEK ( - 16336) * PEEK ( -
16336): NEXT BUZZ: FOR TD = 1 TO 10: NEXT TD: NEXT ZZ
1660 HOME :LE = LE + 1:ID = ID + 5:BL = BL + 10
1670 GOSUB 990: REM ** PRINT IT ALL
1680 GR
1690 GOSUB 760: REM ** NEW BOARD
1700 RETURN
1710 REM **
1720 REM ** CHECK IT
1730 REM **
1740 IF SCRN( PX,PY) = 1 THEN LI = LI - 1: GOSUB 990: VTAB 21: HTAB 27:
FLASH : PRINT "DUDE LOST": FOR A = 1 TO 1000: NEXT A: NORMAL : VTAB 21: HTAB
27: PRINT " ":PX = 20:PY = 0:FG = 1
1750 IF SCRN( PX,PY) = 15 THEN ED = ED - 1:SC = SC + 10: GOSUB 990: VTAB
21: HTAB 27: PRINT "MUNCH!": FOR BUZZ = 1 TO 25:P = PEEK ( - 16336) * PEEK
( - 16336): NEXT BUZZ: VTAB 21: HTAB 27: PRINT " ";
1760 IF LI < 1 THEN HOME : VTAB 21: PRINT "GAME OVER!":FL = 1
1770 RETURN
1780 REM **
1790 REM ** PAUSE...
1800 REM **
1805 FLASH
1810 VTAB 21: HTAB 16: PRINT CHR$ (91);"PAUSE ON]"
1811 NORMAL
1814 POKE - 16368,0
1815 COLOR= 15: PLOT PX,PY: COLOR= 0: PLOT PX,PY: IF PEEK ( - 16384) < 127
THEN 1815
1816 GET A$: IF A$ < > CHR$ (27) THEN CALL - 1059: GOTO 1815
1820 VTAB 21: HTAB 16: PRINT CHR$ (91);"PLAYING!]"
1830 RETURN
1840 REM
1850 REM **
1860 REM ** ERROR HANDLE...
1870 REM **
1880 ERR = PEEK (222)
1890 LN = PEEK (219) * 256 + PEEK (218)
1900 TEXT
1910 HOME : INVERSE : PRINT "PAC-DODGER II:": NORMAL
1920 PRINT : PRINT "ERROR #";ERR;"..."
1930 PRINT : PRINT "IN LINE #";LN;"..."
1935 PRINT : PRINT "(???)";: HTAB 1
1940 IF ERR = 0 THEN PRINT "(NEXT WITHOUT FOR)
1950 IF ERR = 16 THEN PRINT "(SYNTAX ERROR)"
1960 IF ERR = 22 THEN PRINT "(RETURN WITHOUT GOSUB)"
1970 IF ERR = 53 THEN PRINT "(ILLEGAL QUANTITY)"
1980 IF ERR = 69 THEN PRINT "(OVERFLOW)"
1990 IF ERR = 77 THEN PRINT "(OUT OF MEMORY)"
2000 IF ERR = 133 THEN PRINT "(DIVISION BY ZERO)"
2010 IF ERR = 191 THEN PRINT "(FORMULA TOO COMPLET)"
2020 IF ERR = 255 THEN PRINT "(CONTROL - C PRESSED)"
2030 PRINT : PRINT : PRINT "PRESS 'RESET' -- RESTART, OR
'SPACE' -- ATTEMPT TO CONTINUE"
2040 IF PEEK ( - 16384) > 127 THEN GET A$: GOTO 2060
2050 GOTO 2040
2060 IF A$ < > CHR$ (32) THEN CALL - 1059: GOTO 2040
2065 QQ = QQ = + 1
2070 RESUME
2080 REM **
2081 REM ** MUSIC SET UP
2082 REM **
2090 IF PEEK (866) = 172 AND PEEK (867) = 97 THEN RETURN
2100 POKE 865,115: POKE 866,172: POKE 867,97: POKE 868,3: POKE 869,174:
POKE 870,97
2105 POKE 871,3: POKE 872,232: POKE 873,208: POKE 874,253: POKE 875,169:
POKE 876,4: POKE 877,32: POKE 878,168: POKE 879,252: POKE 880,173: POKE
881,48: POKE 882,192: POKE 883,136: POKE 884,208: POKE 885,239
2106 POKE 886,206: POKE 887,96: POKE 888,3: POKE 889,208: POKE 890,231:
POKE 891,96
2107 RETURN
2110 REM **
2111 REM ** START TUNE!
2112 REM **
2120 FOR MU = 1 TO 28: READ P,D: POKE 864,D: POKE 865,P: CALL 886: NEXT MU:
RETURN
2130 DATA 8,10,8,10,95,3,8,10,115,3,8,10,95,10
2140 DATA 8,10,8,10,95,3,8,10,115,3,8,10,95,10
2150 DATA 8,10,8,10,95,3,8,10,115,3,8,10,95,10
2160 DATA 190,7,195,7,200,7,207,7,211,10,166,5,8,20
SAVE PAC.DODGER
REM -- PRESS RETURN TO PLAY
RUN
-----End Applesoft Dumpfile-----
Just cut and paste it into your favorite Notepad program
(MS Windows: Notepad highly recommended) Then save
it as a txt file and Hyperterm it over to your Apple II!!
I had excellent results at 9600 baud, Line delay 750ns, and
character delay 15ns in Hyper-term. The apple didn't
seem to mind it much either! :)
Later,
Craig