diff --git a/lib/linguist/languages.yml b/lib/linguist/languages.yml index 78008299..fd470b46 100755 --- a/lib/linguist/languages.yml +++ b/lib/linguist/languages.yml @@ -4072,6 +4072,17 @@ SystemVerilog: codemirror_mode: verilog codemirror_mime_type: text/x-systemverilog language_id: 363 +TI Program: + type: programming + ace_mode: text + color: "#A0AA87" + extensions: + - ".8xp" + - ".8xk" + - ".8xk.txt" + - ".8xp.txt" + language_id: 422 + tm_scope: none TLA: type: programming extensions: diff --git a/samples/TI Program/srcalpha.8xp.txt b/samples/TI Program/srcalpha.8xp.txt new file mode 100644 index 00000000..71149ad7 --- /dev/null +++ b/samples/TI Program/srcalpha.8xp.txt @@ -0,0 +1,63 @@ +.AlphaCS +#ExprOff +If getKey(41) + sub(ADM) +End +Lbl START +"appv alpha "->Str1 +"appvAlphaCS"->Str2 +.ALPHA CS +[7EFFFFE7FFFFE7E7]->Pic11 +[E0E0E0E0E0FFFF7F]->Pic12 +[FEFFE7FFFEE0E0E0]->Pic13 +[E7E7E7FFFFE7E7E7]->Pic14 +[7EFFFFE7FFFFE7E7]->Pic15 +[7FFFFFE0E0FFFF7F]->Pic16 +[7FFFFF781EFFFFFE]->Pic17 +.arch +[0038447C44440000]->Pic21 +.hide +[0054004400540000]->Pic22 +.lock +[0038447C7C7C0000]->Pic23 +.(c) Scott Mangiapane +Data(72,8)->GDB0 +[42600A360008000100994DDF2A6C61B1B28091294A22AAAAAAAB005A6DCA226A69B9A9800000000000202000000000000000C0200000000000000000000000000000000000000000] +.icon unknown +Data(16,16)->GDB11 +[EFFEA803EB8308032BFB28032BFB0803EBFBA803EBFB08032B8328032FFF07FF] +.icon SRC +Data(16,16)->GDB12 +[01801A583E7C3FFC3FFC3E7C1A580A500240FFFFC471BDAFCC6FF5AF8DB1FFFF] +.icon ASM +Data(16,16)->GDB13 +[FFFFFFFFFFFFFFFFFFFFCE6BB5D586D5B75DB4DDFFFFFFFFFFFFFFFFFFFFFFFF] +.icon shell +Data(16,16)->GDB14 +[FFFFFFFFFFFFFFFFFFFFFFFF97B5B155D5359595FFFFFFFFFFFFFFFFFFFFFFFF] +Goto SET +prgmSRCFUNC +prgmSRCGUI +prgmSRCSORT +Lbl SET +.start, set up +ClrDraw +StoreGDB +DiagnosticOff +Fix 5 +Full +!If GetCalc(Str1,[Y1]) + sub(NEW) + StoreGDB +End +GetCalc(Str1,[Y1]) +If {[Y1]+0} + !If sub(CODE) + Goto END + End +End +Asm(FDCB249E) +If {[Y1]+6} + Asm(FDCB24DE) +End +Goto DLIST \ No newline at end of file diff --git a/samples/TI Program/srcfunc.8xp.txt b/samples/TI Program/srcfunc.8xp.txt new file mode 100644 index 00000000..84c91340 --- /dev/null +++ b/samples/TI Program/srcfunc.8xp.txt @@ -0,0 +1,194 @@ +.FUNC AlphaCS +Lbl ADM +DiagnosticOff +Fix 5 +Full +StoreGDB +sub(D2,13,17,70,29,"Admin Access") +sub(D1,15,27) +Text(15,37,"Admin Code: - - - -") +DispGraph +Repeat getKey->A +End +Text(55,37,"*") +DispGraph +Repeat getKey->B +End +Text(62,37,"*") +DispGraph +Repeat getKey->C +End +Text(69,37,"*") +DispGraph +Repeat getKey->D +End +Text(76,37,"*") +DispGraph +Normal +Pause 100 +Full +If (A!=20) or (B!=35) or (C!=18) or (D!=27) + Goto END +End +sub(D2,13,17,70,29,"Author Info") +sub(D1,15,27) +Bitmap(15,38,GDB0) +DispGraph +Repeat (getKey) and (getKey(9)) +End +DelVar "appv alpha " +Return +Lbl D1 +.draws title +Pt-On([r1]+1,[r2]+1,Pic11) +Pt-On([r1]+10,[r2]+1,Pic12) +Pt-On([r1]+19,[r2]+1,Pic13) +Pt-On([r1]+28,[r2]+1,Pic14) +Pt-On([r1]+37,[r2]+1,Pic15) +Pt-On([r1]+48,[r2]+1,Pic16) +Pt-On([r1]+57,[r2]+1,Pic17) +RectI([r1],[r2],66,10) +Pxl-Off([r1],[r2]) +RectI([r1]+14,[r2],4,5) +RectI([r1]+23,[r2]+7,4,3) +RectI([r1]+46,[r2]+1,1,8) +RectI([r1]+45,[r2],3,1) +RectI([r1]+46,[r2]+9,2,1) +Pxl-Off([r1]+65,[r2]+9) +Return +Lbl D2 +.windows +Rect([r1]+1,[r2],[r3]-2,[r4]) +Rect([r1],[r2]+1,[r3],[r4]-2) +RectI([r1]+1,[r2]+1,[r3]-2,[r4]-2) +Text([r1]+2,[r2]+2,[r5]) +RectI([r1]+1,[r2]+1,[r3]-2,8) +Pt-Off([r1]+[r3]-9,[r2]+1,[C1BEAAB6AABEC1FF]) +Pxl-On([r1]+1,[r2]+[r4]-2) +Pxl-On([r1]+[r3]-2,[r2]+[r4]-2) +Return +Lbl D3 +.archiving box +sub(D2,15,22,66,20,"Archiving...") +Text(17,31,"Please wait...") +Return +Lbl CODE +sub(D2,15,22,66,20,"Access Denied") +Text(29,32," - - - - ") +DispGraph +1->[r2] +Repeat getKey->[r1] +End +Text(29,32,"*") +DispGraph +If [r1]!=({[Y1]+1}) + 0->[r2] +End +Repeat getKey->[r1] +End +Text(39,32,"*") +DispGraph +If [r1]!=({[Y1]+2}) + 0->[r2] +End +Repeat getKey->[r1] +End +Text(49,32,"*") +DispGraph +If [r1]!=({[Y1]+3}) + 0->[r2] +End +Repeat getKey->[r1] +End +Text(59,32,"*") +DispGraph +If [r1]!=({[Y1]+4}) + 0->[r2] +End +Normal +Pause 200 +Full +Return[r2] +Lbl NEW +ClrDraw +sub(D1,0,0) +RectI(0,11,96,1) +Text(1,12,"Installation") +Text(1,20,"Enter your new keycode:") +Text(1,26," - - - - ") +DispGraph +GetCalc(Str1,16)->[r1] +Fill([r1],16,1) +0->{[r1]} +Repeat getKey->[r2] +End +[r2]->{[r1]+1} +Text(1,26,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{[r1]+2} +Text(7,26,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{[r1]+3} +Text(13,26,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{[r1]+4} +Text(19,26,"*") +DispGraph +Fill(L1,50,0) +Text(1,34,"Confirm keycode:") +Text(1,40," - - - - ") +DispGraph +Repeat getKey->[r2] +End +[r2]->{L1+1} +Text(1,40,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{L1+2} +Text(7,40,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{L1+3} +Text(13,40,"*") +DispGraph +Repeat getKey->[r2] +End +[r2]->{L1+4} +Text(19,40,"*") +DispGraph +If ({[r1]+1}={L1+1}) and ({[r1]+2}={L1+2}) and ({[r1]+3}={L1+3}) and ({[r1]+4}={L1+4}) + sub(D3) + DispGraph + GetCalc(Str2,10) + Archive Str1 + GetCalc(Str1,[Y1]) + ClrDraw + Return + Else + Text(1,48,"ERROR keycodes do not") + Text(1,54,"match.") + DispGraph + UnArchive Str1 + DelVar Str1 + Repeat getKey + End + Goto END +End +Return +Lbl END +Asm(FDCB249E) +If {[Y1]+6} + Asm(FDCB24DE) +End +ClrDraw +ClrDraw^^r +ClrHome +Return^^r \ No newline at end of file diff --git a/samples/TI Program/srcgui.8xp.txt b/samples/TI Program/srcgui.8xp.txt new file mode 100644 index 00000000..aba98bf3 --- /dev/null +++ b/samples/TI Program/srcgui.8xp.txt @@ -0,0 +1,563 @@ +.GUI AlphaCS +#Axiom(RUNPRGM) +#Axiom(ZSTAXE) +Lbl DLIST +ClrDraw +ClrDraw^^r +sub(D1,0,0) +RectI(0,11,96,1) +!If sub(POLAR,1) + RectI(0,63,96,1) + Text(1,13,"No programs found.") + DispGraph + Goto KLIST2 + Else + Fill(L5,50,0) + Copy(L1,L5,20) + 13->B->G + 0->I + 1->H + Text(1,13,L2) + If D + Pt-On(77,13,Pic21) + End + If E + Pt-On(83,13,Pic22) + End + If F + Pt-On(89,13,Pic23) + End + For(S,1,6) + If sub(ADJ,1) + S*7+13->G + Text(1,S*7+13,L2) + If D + Pt-On(77,S*7+13,Pic21) + End + If E + Pt-On(83,S*7+13,Pic22) + End + If F + Pt-On(89,S*7+13,Pic23) + End + End + End +End +Fill(L4,50,0) +Copy(L1,L4,20) +Lbl KLIST1 +Rect(90,0,6,10) +RectI(90,0,6,10) +0->S->T +sub(POLAR,1) +If Equ>String(L1,L5) + S++ +End +sub(POLAR,0) +If Equ>String(L1,L4) + T++ +End +If (S) and (T) + Pt-On(90,6,[F870200000000000]) + Pt-On(90,2,[2070F80000000000]) + Else + If S + Pt-On(90,4,[2070F80000000000]) + End + If T + Pt-On(90,4,[F870200000000000]) + End +End +RectI(0,63,96,1) +RectI(0,B,96,7) +DispGraph +RectI(0,B,96,7) +RectI(0,63,96,1) +If getKey(15) + Goto DLIST +End +Repeat getKey + If getKey(41) + Repeat getKey(41)=0 + End + Asm(3E01D303FB76) + Repeat getKey(41)=0 + End + End +End +If getKey(48) + Goto DSET1 +End +If (getKey(9)) or (getKey(54)) + Fill(L1,50,0) + Copy(L5,L1,20) + If (B-13/7)=0 + Fill(L1,50,0) + Copy(L5+1,L1,20) + sub(DATA) + Else + For(B-13/7) + sub(ADJ,1) + End + End + Goto DPRGM1 +End +If getKey(4) + If (B!=13) + For(S,0,7) + RectI(0,63,96,1) + RectI(0,B-S,96,7) + DispGraph + RectI(0,B-S,96,7) + RectI(0,63,96,1) + End + B-7->B + Else + sub(POLAR,1) + If Equ>String(L1,L5) + Fill(L1,50,0) + Copy(L4,L1,20) + sub(ADJ,0) + Fill(L4,50,0) + Copy(L1,L4,20) + Fill(L1,50,0) + Copy(L5,L1,20) + sub(ADJ,0) + Fill(L5,50,0) + Copy(L1,L5,20) + Fill(L1,50,0) + Copy(L4,L1,20) + Rect(0,0,96,13) + RectI(0,0,96,13) + For(7) + Vertical+ + End + Rect(0,62,96,2) + RectI(0,62,96,2) + Text(1,13,L2) + If D + Pt-On(77,13,Pic21) + End + If E + Pt-On(83,13,Pic22) + End + If F + Pt-On(89,13,Pic23) + End + Rect(0,0,96,13) + RectI(0,0,96,13) + sub(D1,0,0) + RectI(0,11,96,1) + End + End +End +If getKey(1) + If (B!=G) + For(S,0,7) + RectI(0,63,96,1) + RectI(0,B+S,96,7) + DispGraph + RectI(0,B+S,96,7) + RectI(0,63,96,1) + End + B+7->B + Else + sub(POLAR,0) + If Equ>String(L1,L4) + Fill(L1,50,0) + Copy(L5,L1,20) + sub(ADJ,1) + Fill(L5,50,0) + Copy(L1,L5,20) + Fill(L1,50,0) + Copy(L4,L1,20) + sub(ADJ,1) + Fill(L4,50,0) + Copy(L1,L4,20) + For(7) + Vertical- + End + Text(1,55,L2) + If D + Pt-On(77,55,Pic21) + End + If E + Pt-On(83,55,Pic22) + End + If F + Pt-On(89,55,Pic23) + End + Rect(0,0,96,13) + RectI(0,0,96,13) + sub(D1,0,0) + RectI(0,11,96,1) + End + End +End +If getKey(15) + Goto END +End +Goto KLIST1 +Lbl KLIST2 +If getKey(15) + Goto DLIST +End +Repeat getKey + If getKey(41) + Repeat getKey(41)=0 + End + Asm(3E01D303FB76) + Repeat getKey(41)=0 + End + End +End +If getKey(48) + Goto DSET1 +End +If getKey(15) + Goto END +End +Goto KLIST2 +Lbl DPRGM1 +GetCalc("appv alpha ",[Y1]) +13->B +D->X +E->Y +F->Z +Lbl DPRGM2 +GetCalc(L1,[Y3]) +0->H +If ({[Y3]+0}=187) and ({[Y3]+1}=109) + 1->H + If {[Y3]+2}=201 + 2->H + End + If {[Y3]+3}=201 + 3->H + End +End +If {[Y3]+0}=58 + 4->H +End +ClrDraw +ClrDraw^^r +sub(D1,0,0) +RectI(0,11,96,1) +Text(1,49,L2) +RectI(0,48,96,16) +69->S +If Z + Pt-Change(S,56,Pic23) + S-6->S +End +If Y + Pt-Change(S,56,Pic22) + S-6->S +End +If X + Pt-Change(S,56,Pic21) +End +RectI(1,56,94,7) +Text(2,56,"size: ",{[Y3]-2}^^r>Dec) +Text(1,13,"Run (with zStart)") +If X + Text(1,20,"Unarchive PRGM") + Else + Text(1,20,"Archive PRGM") +End +If Y + Text(1,27,"Unhide PRGM") + Else + Text(1,27,"Hide PRGM") +End +If Z + Text(1,34,"Unlock PRGM") + Else + Text(1,34,"Lock PRGM") +End +Rect(76,44,20,20) +RectI(77,45,18,18) +If H=0 + Bitmap(78,46,GDB11) +End +If H=1 + Bitmap(78,46,GDB13) +End +If H=2 + Bitmap(78,46,GDB14) +End +If H=3 + Bitmap(78,46,GDB14) +End +If H=4 + Bitmap(78,46,GDB12) +End +Lbl KPRGM +RectI(0,B,96,7) +DispGraph +RectI(0,B,96,7) +Repeat getKey +End +If (getKey(9)) or (getKey(54)) + If B=13 + sub(SETPRGM) + Goto RUN + Else + Fill(L2,20,0) + Copy(L1+1,L2,20) + Fill(L1,20,0) + Copy(L2,L1,20) + sub(DATA) + If B=20 + If X + 0->X + Else + 1->X + End + Goto DPRGM2 + End + If B=27 + If Y + 0->Y + Else + 1->Y + End + Goto DPRGM2 + End + If B=34 + If Z + 0->Z + Else + 1->Z + End + Goto DPRGM2 + End + End +End +If (getKey(4)) and (B!=13) + For(S,0,7) + RectI(0,B-S,96,7) + DispGraph + RectI(0,B-S,96,7) + Normal + Pause 3 + Full + End + B-7->B +End +If ((getKey(1)) and (B!=34) + For(S,0,7) + RectI(0,B+S,96,7) + DispGraph + RectI(0,B+S,96,7) + Normal + Pause 3 + Full + End + B+7->B +End +If getKey(15) + sub(SETPRGM) + Goto DLIST +End +Goto KPRGM +Lbl SETPRGM +If (X!=D) or (Y!=E) or (Z!=F) + If X + sub(D3) + DispGraph + End + UnArchive L1 + X->D + If (E!=Y) + If Y + {C-7}-64->{C-7} + {L1+1}-64->{L1+1} + Else + {C-7}+64->{C-7} + {L1+1}+64->{L1+1} + End + Y->E + End + If (F!=Z) + If Z + 6->{C} + |E06->{L1} + Else + 5->{C} + |E05->{L1} + End + Z->F + End + If X + Archive L1 + End +End +GetCalc(L1,[Y3]) +Return +Lbl RUN +GetCalc("appv hold ",20)->S +Fill(S,20,0) +Copy(L1+1,S,10) +A->{S+15} +DiagnosticOn +Fix 4 +Normal +If D + GetCalc("appvzRun",{[Y3]-2}^^r)->S + Copy([Y3],S,{[Y3]-2}^^r) +End +2-SampZInt(|LRUNERR) +If D + Fpdf("appvzRun") + Else + Fpdf(L1) +End +2-SampTInt +DelVar "appvzRun" +GetCalc("appv hold ")->S +Fill(L1,20,0) +Copy(S,L1,10) +{S+15}->A +sub(DATA) +DelVar "appv hold " +DiagnosticOff +Fix 5 +Full +Repeat getKey=0 +End +Goto DPRGM1 +Lbl RUNERR +2-SampFTest ->S +DelVar "appvzRun" +DiagnosticOff +Fix 5 +Full +sub(D2,10,22,76,20,"Error") +If S=8 + Text(12,31,"Syntax") + Else + Text(12,31,"Error "[23]"",S>Dec) +End +DispGraph +Repeat (getKey) and (getKey(9)) +End +GetCalc("appv hold ")->S +Fill(L1,20,0) +Copy(S,L1,10) +{S+15}->A +sub(DATA) +DelVar "appv hold " +DiagnosticOff +Fix 5 +Full +Repeat getKey=0 +End +Goto DPRGM1 +Lbl DSET1 +21->B +{[Y1]+5}->X +{[Y1]}->Y +{[Y1]+6}->Z +Lbl DSET2 +ClrDraw +sub(D1,0,0) +RectI(0,11,96,1) +Text(1,12,"by ClrDraw, Nov 2013, v 1") +RectI(0,19,96,1) +RectI(0,63,96,1) +If X + Text(1,21,"Show Hidden On") + Else + Text(1,21,"Show Hidden Off") +End +If Y + Text(1,28,"Password On") + Else + Text(1,28,"Password Off") +End +If Z + Text(1,35,"Lowercase On") + Else + Text(1,35,"Lowercase Off") +End +Text(1,42,"Uninstall AlphaCS") +Lbl KSET +RectI(0,B,96,7) +DispGraph +RectI(0,B,96,7) +Repeat getKey +End +If (getKey(54)) or (getKey(9)) + If B=21 + If X + 0->X + Else + 1->X + End + Goto DSET2 + End + If B=28 + If Y + 0->Y + Else + 1->Y + End + Goto DSET2 + End + If B=35 + If Z + 0->Z + Else + 1->Z + End + Goto DSET2 + End + If B=42 + If sub(CODE) + DelVar Str1 + Goto END + Else + Goto DSET2 + End + End +End +If (getKey(4)) and (B!=21) + For(7) + RectI(0,B,96,7) + DispGraph + RectI(0,B,96,7) + B-- + Normal + Pause 3 + Full + End +End +If (getKey(1)) and (B!=42) + For(7) + RectI(0,B,96,7) + DispGraph + RectI(0,B,96,7) + B++ + Normal + Pause 3 + Full + End +End +If getKey(15) + If ({[Y1]+5}!=X) or ({[Y1]}!=Y) or ({[Y1]+6}!=Z) + UnArchive Str1 + GetCalc(Str1)->S + X->{S+5} + Y->{S} + Z->{S+6} + sub(D3) + DispGraph + Archive Str1 + GetCalc(Str1,[Y1]) + End + Repeat getKey=0 + End + Goto DLIST +End +Goto KSET \ No newline at end of file diff --git a/samples/TI Program/srcsort.8xp.txt b/samples/TI Program/srcsort.8xp.txt new file mode 100644 index 00000000..f0c54b98 --- /dev/null +++ b/samples/TI Program/srcsort.8xp.txt @@ -0,0 +1,138 @@ +.SORT AlphaCS +Lbl POLAR +Fill(L1,50,0) +{|E9830}^^r->[r2] +Repeat (({[r2]}=5) or ({[r2]}=6)) and (({[r2]-7}>48) or (({[Y1]+5}) and ({[r2]-7}<28))) + [r2]-{[r2]-6}-7->[r2] + If [r2]<={|E982E}^^r + Return0 + End +End +For([r3],1,{[r2]-6}) + {[r2]-6-[r3]}->{L1+[r3]-1} +End +[r2]-{[r2]-6}-7->[r2] +Repeat 0 + If (({[r2]}=5) or ({[r2]}=6)) and (({[r2]-7}>48) or (({[Y1]+5}) and ({[r2]-7}<28))) + Fill(L2,50,0) + For([r3],1,{[r2]-6} + {[r2]-6-[r3]}->{L2+[r3]-1 + End + 0->[r3] + Repeat ({L1+[r3]}!={L2+[r3]}) or ([r3]=20) + [r3]++ + End + If (({L1+[r3]}>{L2+[r3]}) and ([r1]=1)) or (({L1+[r3]}<{L2+[r3]}) and ([r1]=0)) + Fill(L1,50,0) + Copy(L2,L1,20) + End + Else + If [r2]<{|E982E}^^r + sub(DATA) + Return1 + End + End + [r2]-{[r2]-6}-7->[r2] +End +Lbl ADJ +Fill(L2,50,0) +Copy(L1+1,L2,20) +Fill(L1,50,0) +Copy(L2,L1) +Fill(L3,50,0) +Copy(L1,L3,20) +Fill(L1,50,0) +{|E9830}^^r->[r2] +sub(CHECK) +Repeat (({[r2]}=5) or ({[r2]}=6)) and ([r4]) and (({[r2]-7}>48) or ({[r2]-7}<28)) + [r2]-{[r2]-6}-7->[r2] + If [r2]<{|E982E}^^r + Fill(L1,50,0) + Copy(L3,L1,20) + Fill(L3,50,0) + sub(DATA) + Return0 + End + sub(CHECK) +End +For([r3],1,{[r2]-6}) + {[r2]-6-[r3]}->{L1+[r3]-1} +End +[r2]-{[r2]-6}-7->[r2] +Repeat 0 + sub(CHECK) + If (({[r2]}=5) or ({[r2]}=6)) and ([r4]) and (({[r2]-7}>48) or ({[r2]-7}<28)) + Fill(L2,50,0) + For([r3],1,{[r2]-6} + {[r2]-6-[r3]}->{L2+[r3]-1 + End + 0->[r3] + Repeat ({L1+[r3]}!={L2+[r3]}) or ([r3]=20) + [r3]++ + End + If (({L1+[r3]}>{L2+[r3]}) and ([r1]=1)) or (({L1+[r3]}<{L2+[r3]}) and ([r1]=0)) + Fill(L1,50,0) + Copy(L2,L1,20) + End + Else + If [r2]<{|E982E}^^r + sub(DATA) + Return1 + End + End + [r2]-{[r2]-6}-7->[r2] +End +Lbl CHECK +0->[r4] +Repeat ({[r2]-7-[r4]}!={L3+[r4]}) or (([r4]>={[r2]-6}) and ({L3+[r4]}=0)) + [r4]++ +End +If ((({[r2]-7-[r4]}<{L3+[r4]}) and ([r1]=1)) or (({[r2]-7-[r4]}>{L3+[r4]}) and ([r1]=0))) or (([r4]>={[r2]-6}) and ({L3+[r4]}=0)) + 0->[r4] + Else + 1->[r4] +End +Return +Lbl DATA +{|E9830}^^r->C +Repeat 0 + Repeat ({C}=5) or ({C}=6) and (({[r1]-7}>48) or ({[r1]-7}<28)) + C-{C-6}-7->C + End + Fill(L2,50,0) + For([r1],1,{C-6}) + {C-6-[r1]}->{L2+[r1]-1} + End + !If Equ>String(L1,L2) + If {C-5}=0 + 0->D + Else + 1->D + End + If {C-7}<28 + 1->E + Else + 0->E + End + If {C}=6 + 1->F + Else + 0->F + End + Fill(L2,50,0) + Copy(L1,L2,20) + Fill(L1,50,0) + Copy(L2,L1+1,20) + If E + {L2}+64->{L2} + End + If F + |E06->{L1} + Else + |E05->{L1} + End + Return + End + C-{C-6}-7->C +End +Return \ No newline at end of file