I found out that opening an 89P file in notepad gives me this (not that the program isn't mine, I just used it for testing purposes):
Code:
**TI92P* main bo R bomberma ð ¥Z –()
Prgm
setFold(bomberma)
Local a,b,c,c01,c02,c03,d,d01,d02,d03,e,e1,e2,f,f1,f2,m1,m2,m3,n1,o,on1,on2,on3,on4,r,x,ˆ,ˆ2
RplcPic b1
For ˆ,1,225
getKey()ˆ2:If ˆ20:Goto st
EndFor
ClrDraw
PxlText "Presents",30,55
For ˆ,1,225
getKey()ˆ2:If ˆ20:Goto st
EndFor
For ˆ,30,36
getKey()ˆ2:If ˆ20:Goto st
PxlHorz ˆ
EndFor
For ˆ,30,36
getKey()ˆ2:If ˆ20:Goto st
PxlHorz ˆ,1
EndFor
Lbl st
RplcPic b2
Toolbar
Title " Play ",p
Title " Options ",o
Title " About ",about
Title " Exit ",e
EndTBar
Lbl p
RplcPic b3
For ˆ,0,o11-1
Lbl bl
rand(7)a
a-1a:a*8a:a+3a
rand(23)b
b*6b:b+4b
If pxlTest(a+3,b+3)=true or a=3 and b=10 or a=3 and b=16 or a=11 and b=10:Goto bl
RclPic b4,a,b
EndFor
Lbl rup
rand(5)e1
e1-1e1:e1*8e1:e1+3e1
rand(11)f1
f1*6f1:f1+4f1
If pxlTest(e1+3,f1+3)=true:Goto rup
RclPic b6,e1,f1
Lbl rdo
rand(5)e2
e2-1e2:e2*8e2:e2+3e2
rand(11)f2
f2*6f2:f2+4f2
If pxlTest(e2+3,f2+3)=true:Goto rdo
RclPic b7,e2,f2
Lbl m1
rand(7)c01:c01-1c01:c01*8c01:c01+3c01
rand(23)d01:d01*6d01:d01+4d01
If pxlTest(c01+3,d01+3)=true or c01=3 and d01=10 or c01=3 and d01=16 or c01=11 and d01=10:Goto m1
Lbl m2
rand(7)c02:c02-1c02:c02*8c02:c02+3c02
rand(23)d02:d02*6d02:d02+4d02
If pxlTest(c02+3,d02+3)=true or c02=3 and d02=10 or c02=3 and d02=16 or c02=11 and d02=10:Goto m2
Lbl m3
rand(7)c03:c03-1c03:c03*8c03:c03+3c03
rand(23)d03:d03*6d03:d03+4d03
If pxlTest(c03+3,d03+3)=true or c03=3 and d03=10 or c03=3 and d03=16 or c03=11 and d03=10:Goto m3
3a:10b:0c:0d
0e:9f
o12n1:1r
1m1:1m2:1m3:3x
RclPic b3
PxlText "#X: : : # :",68,10
RclPic b5,68,46:RclPic b5,68,76:RclPic b5,68,106
Lbl main
PxlText string(x),68,28
PxlText " ",68,118
PxlText string(n1),68,118
Loop
RclPic b6,e1,f1
RclPic b7,e2,f2
If a=e1 and b=f1:r+1r
If a=e2 and b=f2:r-1r
If r>5:5r:If r<1:1r
PxlText string(r),68,58
getKey()ˆ
If e=1 and ˆ=kbo or fœ0
Goto bo
If e=0 and ˆ=kbo Then
1e:ac:bd:n1-1n1
EndIf
If e=1 Then:f-1f
RclPic b5,c,d:EndIf
PxlText string(f),68,88
If ˆ0:PxlText " ",a,b
If ˆ=kup and pxlTest(a-2,b+3)=false:a-8a
If ˆ=kdo and pxlTest(a+8,b+3)=false:a+8a
If ˆ=kle and pxlTest(a+3,b-1)=false:b-6b
If ˆ=kri and pxlTest(a+3,b+7)=false:b+6b
RclPic b8,a,b
If m1=1 Then
rand(4)ˆ2
PxlText " ",c01,d01
If ˆ2=1 and pxlTest(c01-2,d01+3)=false:c01-8c01
If ˆ2=2 and pxlTest(c01+8,d01+3)=false:c01+8c01
If ˆ2=3 and pxlTest(c01+3,d01-1)=false:d01-6d01
If ˆ2=4 and pxlTest(c01+3,d01+7)=false:d01+6d01
PxlText "X",c01,d01
If a=c01 and b=d01:Goto w2:EndIf
If m2=1 Then
rand(4)ˆ2
PxlText " ",c02,d02
If ˆ2=1 and pxlTest(c02-2,d02+3)=false:c02-8c02
If ˆ2=2 and pxlTest(c02+8,d02+3)=false:c02+8c02
If ˆ2=3 and pxlTest(c02+3,d02-1)=false:d02-6d02
If ˆ2=4 and pxlTest(c02+3,d02+7)=false:d02+6d02
PxlText "X",c02,d02
If a=c02 and b=d02:Goto w2:EndIf
If m3=1 Then
rand(4)ˆ2
PxlText " ",c03,d03
If ˆ2=1 and pxlTest(c03-2,d03+3)=false:c03-8c03
If ˆ2=2 and pxlTest(c03+8,d03+3)=false:c03+8c03
If ˆ2=3 and pxlTest(c03+3,d03-1)=false:d03-6d03
If ˆ2=4 and pxlTest(c03+3,d03+7)=false:d03+6d03
PxlText "X",c03,d03
If a=c03 and b=d03:Goto w2:EndIf
EndLoop
Lbl bo
0on1:0on2:0on3:0on4
PxlText " ",c,d
If pxlTest(c-3,d+3)=false Then:PxlText " ",c-8,d
Else:1on1:EndIf
If pxlTest(c+9,d+3)=false Then:PxlText " ",c+8,d
Else:1on2:EndIf
If pxlTest(c+3,d-2)=false Then:PxlText " ",c,d-6
Else:1on3:EndIf
If pxlTest(c+3,d+8)=false Then:PxlText " ",c,d+6
Else:1on4:EndIf
If rž2 and c-10ž4 and on1=0 Then
If pxlTest(c-11,d+3)=false Then
PxlText " ",c-16,d
Else:1on1:EndIf:EndIf
If rž2 and c+16œ59 and on2=0 Then
If pxlTest(c+17,d+3)=false Then
PxlText " ",c+16,d
Else:1on2:EndIf:EndIf
If rž2 and d-7ž7 and on3=0 Then
If pxlTest(c+3,d-8)=false Then
PxlText " ",c,d-12
Else:1on3:EndIf:EndIf
If rž2 and d+13œ148 and on4=0 Then
If pxlTest(c+3,d+14)=false Then
PxlText " ",c,d+12
Else:1on4:EndIf:EndIf
If rž3 and c-18ž4 and on1=0 Then
If pxlTest(c-19,d+3)=false Then
PxlText " ",c-24,d
Else:1on1:EndIf:EndIf
If rž3 and c+24œ59 and on2=0 Then
If pxlTest(c+25,d+3)=false Then
PxlText " ",c+24,d
Else:1on2:EndIf:EndIf
If rž3 and d-13ž7 and on3=0 Then
If pxlTest(c+3,d-14)=false Then
PxlText " ",c,d-18
Else:1on3:EndIf:EndIf
If rž3 and d+19œ148 and on4=0 Then
If pxlTest(c+3,d+20)=false Then
PxlText " ",c,d+18
Else:1on4:EndIf:EndIf
If rž4 and c-24ž4 and on1=0 Then
If pxlTest(c-25,d+3)=false Then
PxlText " ",c-32,d
Else:1on1:EndIf:EndIf
If rž4 and c+32œ59 and on2=0 Then
If pxlTest(c+33,d+3)=false Then
PxlText " ",c+32,d
Else:1on2:EndIf:EndIf
If rž4 and d-19ž7 and on3=0 Then
If pxlTest(c+3,d-20)=false Then
PxlText " ",c,d-24
Else:1on3:EndIf:EndIf
If rž4 and d+25œ148 and on4=0 Then
If pxlTest(c+3,d+26)=false Then
PxlText " ",c,d+24
Else:1on4:EndIf:EndIf
If r=5 and c-34ž4 and on1=0 Then
If pxlTest(c-35,d+3)=false Then
PxlText " ",c-40,d
Else:1on1:EndIf:EndIf
If r=5 and c+40œ59 and on2=0 Then
If pxlTest(c+41,d+3)=false Then
PxlText " ",c+40,d
Else:1on2:EndIf:EndIf
If r=5 and d-25ž7 and on3=0 Then
If pxlTest(c+3,d-26)=false Then
PxlText " ",c,d-30
Else:1on3:EndIf:EndIf
If r=5 and d+31œ148 and on4=0 Then
If pxlTest(c+3,d+32)=false Then
PxlText " ",c,d+30
Else:1on4:EndIf:EndIf
If pxlTest(a+3,b+3)=false:Goto w2
If pxlTest(c01+3,d01+3)=false and m1=1 Then:0m1:x-1x:EndIf
If pxlTest(c02+3,d02+3)=false and m2=1 Then:0m2:x-1x:EndIf
If pxlTest(c03+3,d03+3)=false and m3=1 Then:0m3:x-1x:EndIf
If m1=0 and m2=0 and m3=0:Goto w1
If n1=0:Goto w2
0e:9f
RclPic b3
Goto main
Lbl w1
Pause
Dialog
Title "BomberMaster!"
Text "You Win!"
EndDlog
Goto st
Lbl w2
Pause
Dialog
Title "BomberMaster!"
Text "You Lose!"
EndDlog
Goto st
Lbl o
0o
PopUp {"General Options","Select Keys"},o
If o=0:Goto st
If o=1:Goto op1
If o=2:Goto op2
Lbl op1
Unarchiv o11,o12
If o11=10:1o11
If o11=20:2o11
If o11=30:3o11
If o11=40:4o11
If o11=50:5o11
If o11=60:6o11
If o11=70:7o11
If o11=80:8o11
If o11=90:9o11
If o12=5:1o12
If o12=10:2o12
If o12=15:3o12
If o12=20:4o12
Dialog
Title "General Options:"
DropDown "# Blocks",{"10","20","30","40","50","60","70","80","90"},o11
DropDown "# Bombs",{"5","10","15","20"},o12
EndDlog
If o11=1:10o11
If o11=2:20o11
If o11=3:30o11
If o11=4:40o11
If o11=5:50o11
If o11=6:60o11
If o11=7:70o11
If o11=8:80o11
If o11=9:90o11
If o12=1:5o12
If o12=2:10o12
If o12=3:15o12
If o12=4:20o12
Archive o11,o12
Goto st
Lbl op2
ClrDraw
Unarchiv kup,kdo,kle,kri,kbo
PxlText "",8,6
Loop
getKey()ˆ:If ˆ0:Exit
EndLoop
ˆkup
PxlText "",8,6
Loop
getKey()ˆ:If ˆ0:Exit
EndLoop
ˆkdo
PxlText "",8,6
Loop
getKey()ˆ:If ˆ0:Exit
EndLoop
ˆkle
PxlText "",8,6
Loop
getKey()ˆ:If ˆ0:Exit
EndLoop
ˆkri
RplcPic b5,8,6
Loop
getKey()ˆ:If ˆ0:Exit
EndLoop
ˆkbo
Archive kup,kdo,kle,kri,kbo
Goto st
Lbl about
Dialog
Title "BomberMaster!"
Text "Joshua Entertainent"
Text "By Joshua Masato Chernin"
EndDlog
Goto st
Lbl e
ClrDraw:DispHome
setFold(main)
EndPrgm äå ÜS§
As you can see, most of the code is readable. Would this mean (in theory) that I could just compare the notepad file and the actual file, and take what tokens are missing/converted improperly and use that to create the tokenizer (replacing the .txt extension with the proper extension)?