0 Members and 5 Guests are viewing this topic.
0->SPUS(A,B)While SPOP()Pxl-On(P,Q)If P-95PUS(P+1,Q)EndIf PPUS(P-1,Q)EndIf Q-63PUS(P,Q+1)EndIf QPUS(P,Q+1)EndEndReturnLbl PUSReturnIf pxl-Test(r1,r2)If S<2500r1->{S*2+GBD1}r2->{S*2+GBD1+1}S++EndReturnLbl POPS--{S*2+GBD1}->P{S*2+GBD1+1}->QReturn
There was a floodfill routine posted earlier that used no extra memory and so can never cause a crash, but I can't find the link anymore
Here's one jacobly madehttp://ourl.ca/151805
"Pic0Pic1Pic2Pic3Pic4Pic5Pic6Pic7Pic8Pic9"→Z"Pic1"→IGetCalc("varP")→Qfloat{Q}→P{Z+P}→{I}
"Pic0Pic1Pic2Pic3Pic4Pic5Pic6Pic7Pic8Pic9"→Z"Pic1"→IGetCalc("varP")→Qfloat{Q}→P{P*3+Z+2}→{I+2}
"Pic1"→IGetCalc("varP")→Qfloat{Q}→P(P?-1,9)→{I+2} .Pic1-Pic9 is 0-8, and Pic0 is 9.
"Pic1"→Str1 .Use static instead of varaible data pointers . whenever possible, they are more optimized!If GetCalc("varP") .Error handling is important! .Handle error .Return or Goto somewhereEnd(float{}??10)-1→{2+Str1} .Omits storing and reloading the value returned by GetCalc() . and restructures the conditional to omit the else branch
:.AATEST:"Pic1"→I:GetCalc("uP")→J:fPart(J}→K:K?-1,9→{I+2}:UnArchiveI:GetCalc(I)→Q:conj(Q,{L6},768:DispGraph:ArchiveI:GetCalc("Str1")→V:GetCalc("uA")→M:GetCalc("uB")→N:GetCalc("uH")→O:GetCalc("uW")→P:fPart(M}→A:fPart(N}→B:fPart(O}→H:fPart(P}→W::"0123456789ABCDEF"→T:0→θ:For(D,0,H/8-1:For(C,0,W/8-1:For(F,0,7:8*pxl-Test(8*C+A→Z,8*D+B+F→Y):+(4*pxl-Test(Z+1,Y)):+(2*pxl-Test(Z+2,Y)):+pxl-Test(Z+3,Y):→U:{T+U}→{V+θ}:8*pxl-Test(Z+4,Y):+(4*pxl-Test(Z+5,Y)):+(2*pxl-Test(Z+6,Y)):+pxl-Test(Z+7,Y):→U:{T+U}→{V+θ+1}:θ+2→θ:End:End:End