From: ij59@vaxb.acs.unt.edu
Subject: Flag Capture-TI (for TI-81)
Organization: University of North Texas
Date: Thu, 1 Oct 1992 00:47:44 GMT

I've been trying unsucessfully to find my program code list for "Scorch-TI"
I now believe it is in a _different_ notebook at home (I brought the wrong one
up here last weekend) and I'll check into it next time I go home.  (Until,
then, play TiTank!)  But I do have the lists for "Flag Capture-TI" and
"Tic-Tac-TI" and will post them.  (Tic-Tac-TI is on a computer that is
currently shut down, but I'll set it up sometime this week and post it.)  

But I had Flag Capture typed up on my PC so here it is...

(Please note: I haven't ever typed this back into my TI-81, so it is possible
that there are bugs in the type-up.  Have fun finding them...:)

The presence or absence of closing quotes is extremely important.  In order
to have enough memory for the whole thing, I removed all or almost all
closing parentheses.  But if they are there, there is a reason.

===============================CUT HERE=====================================
                TI-81 Data Dump - "Flag Capture"
 
o = THETA   -> = STO>
 
Prgm7:DLAY.all
:0->o
:Lbl 1
:IS>(o,300
:Goto 1
 
PrgmF:FLAG.EXE
:ClrHome
:Prgmo
:0->[C](6,1
:0->[C](6,2
:Disp "FLAG CAPTURE-TI"
:Disp ""
:Disp "(C) 1992"
:Disp "ACE TECHNOLOGIES"
:Disp "PROGRAM BY"
:Disp "SCOTT MILLER"
:Pause
:PrgmH
:PrgmP
 
PrgmG:GRID.FLG
:({y}(P)-1)12+{x}(P->L
:1->M
:If L>36
:2->M
:If L>72
:3->M
:L-36(M-1->L
:IPart (L/6)+1(FPart(L/6)<>0->R
:L-6(R-1->C
:[A](R,C->G
:If M=2
:[B](R,C->G
:If M=3
:[C](R,C->G
 
PrgmH:STUP.FLG
:P->N
:ClrDraw
:ClrHome
:Disp ""
:Disp "PLACING FLAG..."
:Disp ""
:1->P
:1+IPart(12Rand->A
:1+IPart(8Rand->B
:A->{x}(1
:B->{y}(1
:PrgmG
:0->S
:PrgmI
:Disp "PLACING CLUES..."
:1->Y
:Lbl Y
:1->X
:Lbl X
:abs (A-X->S
:If abs(B-Y)>S
:abs(B-Y->S
:If Rand<.5
:PrgmJ 
:X->{x}(1
:Y->{y}(1
:PrgmG
:PrgmI
:IS>(X,12
:Goto X
:IS>(Y,8
:Goto Y
:Disp "PLACING BOMBS..."
:13->S
:1->o
:Lbl o
:1+IPart (12Rand->X
:1+Ipart (8Rand->Y
:If (X=A)(Y=B
:Goto o
:X->{x}(1
:Y->{y}(1
:PrgmG
:PrgmI
:IS>(o,15
:Goto o
:1->X
:PrgmU
:Lbl A
:Line(1,X,96,X
:Line(X,1,X,64
:X+8->X
:If X<=97
:Goto A
:1->{x}(1
:8->{y}(1
:12->{x}(2
:1->{y}(2
:PrgmR
:PrgmQ
:2->P
:PrgmQ
:N->P
PrgmI:PLCE.FLG
:If M=3
:S->[C](R,C
:If M=2
:S->[B](R,C
:If M=1
:S->[A](R,C
 
PrgmJ:ARRW.FLG
:0->S
:If A<X
:-1->S
:If A>X
:S-2->S
:If B>Y
:S-4->S
:If B<Y
:S-8->S
 
PrgmK:DSCR.FLG
:If G=0
:PrgmL
:If (H>0)(G<12
:PrgmN
:If G=13
:PrgmM
:If G<0
:PrgmO
:Pause
:PrgmU
 
PrgmL:FLAG.FLG
:0->A
:Disp "   YOU FOUND       THE FLAG!"
:Prgm7
:Deg
:ClrDraw
:Line(26,53,26,2
:Line(27,53,68,53
:Line(27,27,68,27
:Line(68,52,68,28
:If P=2
:Goto A
:-90->o
:9->R
:Lbl o
:P>R(R,o
:Line(47+X,40+Y,47-X,40+Y
:o+6->o
:If 0<96
:Goto o
:End
:Lbl A
:29->Y
:Lbl B
:Line(26,Y,68,Y
:Y+2->Y
:If Y<40
:Goto B
:Line(45,39,45,52
:41->Y
:Lbl C
:Line (46,Y,68,Y
:Y+2->Y
:If Y<52
:Goto C
:1->U
:51->Y
:Lbl D
:V-1->V
:abs V->V
:28+V->X
:Lbl E
:PT-On(X,Y
:X+2->X
:If X<43+V
:Goto E
:Y-2->Y
:If Y>40
:Goto D
 
PrgmM:BOMB.FLG
:PrgmS
:1->o
:Lbl o
:X+IPart (7Rand->D
:Y+IPart (7Rand->E
:PT-Chg(D,E
:IS>(o,25
:Goto o
:PrgmR
:Disp "    KA-BOOM!"
:If P=2
:Goto 2
:1->{x}(P
:8->{y}(P
:PrgmQ
:DispHome
:End
:Lbl 2
:12->{x}(P
:1->{y}(P
:PrgmQ
:DispHome

PrgmN:DIST.FLG
:Disp "DISTANCE"
:Disp G
 
PrgmO:DARW.FLG
:abs G->G
:If G>=8
:Disp "     SOUTH"
:G-8Ipart(G/8->G
:If G>=4
:Disp "     NORTH"
:G-4Ipart(G/4->G
:If G>=2
:Disp "     EAST"
:G-2IPart (G/2->G
:If G>=1
:Disp "     WEST"
 
PrgmP:MAIN.FLG
:Lbl P
:PrgmT
:If A<>0
:Goto 8
:Disp "PLAYER"
:Disp P
:Pause
:PrgmU
:Goto P
:Lbl 8
:PrgmG
:PrgmK
:If A=0
:Goto 0
:abs (P-2->P
:Goto P
:Lbl 0
:1+[C](6,P->[C](6,P
:If 10=[C](6,P
:Goto 1
:ClrHome
:Disp "     SCORES"
:Disp ""
:Disp "PLAYER ONE"
:Disp [C](6,1
:Disp "PLAYER TWO"
:Disp [C](6,2
:Pause
:PrgmH
:Goto P
:Lbl 1
:Disp "   GAME OVER,"
:If P=1
:Disp " PLAYER 1 WINS!"
:If P=2
:Disp " PLAYER 2 WINS!"
 
PrgmQ:DRPL.FLG
:PrgmS
:If P=1
:Goto S
:If P=2
:Goto K
:
:Lbl S
:Line(X+2,Y,X+4,Y+2
:Line(X+4,Y,X+2,Y+2
:Line(X+6,Y+1,X+5,Y+2
:Line(X+1,Y+2,X,Y+3
:Line(X+3,Y+2,X+3,Y+5
:Line(X+2,Y+4,X+1,Y+5
:Line(X+5,Y+4,X+5,Y+5
:Line(X+2,Y+6,X+4,Y+6
:End
:Lbl K
:Line(X+1,Y,X+5,Y
:Line(X+1,Y+1,X+5,Y+1
:Line(X,Y+2,X+6,Y+2
:PT-Off(X+3,Y+2
:Line(X,Y+3,X+6,Y+3
:Line(X,Y+4,X,Y+5
:Line(X+6,Y+4,X+6,Y+5
:Line(X+3,Y+4,X+3,Y+6
:Line(X+1,Y+6,X+5,Y+6
:End
:Lbl J
:Line(X+1,Y+1,X+3,Y+1
:PT-On(X+1,Y+2
:Line(X+3,Y+2,X+3,Y+4
:Line(X+1,Y+5,X+5,Y+5
 
PrgmR:CLRS.FLG
:PrgmS
:Y->E
:Lbl Y
:X->D
:Lbl Y
:X->D
:Lbl X
:PT-Off(D,E
:IS>(D,X+6
:Goto X
:IS>(E,Y+6
:Goto Y
:Line(1,64,96,64
:Line(96,1,96,64
 
PrgmS:CONV.FLG
:2+8({x}(p)-1->X
:2+8({y}(p)-1->Y
 
PrgmT:MOVE.FLG
:0->A
:Input
:If (X=49)(Y=33
:End
:Int (X/8+1->T
:Int (Y/8+1->U
:Lbl o
:{x}(P->A
:{y}(P->B
:If A<T
:A+1->A
:If A>T
:A-1->A
:If B<U
:B+1->B
:Ib B>U
:B-1->B
:PrgmR
:abs(P-3->P
:PrgmQ
:abs(P-3->P
:A->{x}(P
:B->{y}(P
:PrgmQ
:If (A<>T)+(B<>U
:Goto o
 
PrgmU:DISP.FLG
:ClrHome
:Disp ""
:Disp ""
:Disp ""

 ________    _______              _         ________     ____
|______  |  |_____  |            | |       |________|   |____|
      / /         | |  _  _   _  |  \       ________    ______   _______
     /  \         | | |_||_| / / |   \     |________|  |____  | |_______|
    / /\ \   _____| |   ____/ /  | |\ \     ________       / /
   /_/  \_\ |_______|  |_____/   |_| \/    |________|     /_/
 
        |  Nippon no anime wa ichi-ban desu!  Otaku rule!    |
        |      Hey, man, I _like_ Robotech.  So sue me.      |
        | Sukotto Miraa/Scott Miller (ij59@vaxb.acs.unt.edu) |

Newsgroups: comp.sys.handhelds