0 Members and 3 Guests are viewing this topic.
In other news, Frey continues kicking unprecedented levels of ass.
This sounds pretty awesome, although I am a little worried that this will make programming in Axe less "authentic," if you know what I mean. Although I do see the merits as well. But is it even necessary to change the b prefix for binary to something else? When parsing, if the b is followed by a 1 or 0, treat it as an indicator of binary data. Otherwise, treat it as the b register.
.KBYCRACK Crackity Hack!prgmDEFINEDiagnosticOffsub(RCL)sub(SSP,3,35,Pic1)sub(SSP,25,30,Pic2)sub(SSP,47,30,Pic3)sub(SSP,69,35,Pic4)sub(SSP,3,48,Pic5)sub(SSP,25,43,Pic5)sub(SSP,47,43,Pic8)sub(SSP,69,48,Pic8)sub(SET)Repeat getKey(54)DispGraphEndsub(W)0→T→PRepeat T=440→X1→ARepeat getKey(54) or (X=40 and (A=2))If A=1Line(2,X/2+2,4,X/2+2)ElseIf A=2ref(2,X/2+2,3,1)rref(2,X/2+2,3,1)EndDispGraphIf X=0:2→A:EndIf A=1:X-1→X:EndIf A=2:X+1→X:EndEndIf getKey(54)sub(W)40-X→XX*X*X/371+P→PElsesub(W)EndT+1→Tsub(SET)End20→XRepeat getKey(54) or (X=100)sub(RCL)sub(FSP,5,30,Pic63)sub(FSP,5,X/2,Pic6)X+1→XDispGraphEnd20-abs(60-X)→XIf X<0:0→X:EndX*X*31/40+P→Psub(W)conj(Pic01,L₃,768)conj(Pic02,L₆,768)sub(Q)ClrDrawsub(Q)ClrDrawsub(W)rand ^999→Qrand ^999→Rrand ^999→SIf P>999:999→P:EndP→ZIf Q>ZQ→ZElseIf R>ZR→ZElseIf S>ZS→ZEnd0→X→YFix 5Repeat Z=XIf P≥X:sub(TSP,4,40,Pic7+Y):EndIf Q≥X:sub(TSP,26,40,Pic7+Y):EndIf R≥X:sub(TSP,48,40,Pic7+Y):EndIf S≥X:sub(TSP,70,40,Pic7+Y):EndIf Y=032→YElse0→YEndVertical -Vertical -Vertical -ref(0,48,96,10)rref(0,48,96,10)If X≤P:Text(4,55,XDec):EndIf X≤Q:Text(26,55,XDec):EndIf X≤R:Text(48,55,XDec):EndIf X≤S:Text(70,55,XDec):EndIf X>P:Text(4,55,PDec):EndIf X>Q:Text(26,55,QDec):EndIf X>R:Text(48,55,RDec):EndIf X>S:Text(70,55,SDec):EndIf X<(Z-25)X+10→XElseIf X<(Z-10)X+1→XPause 100ElseX+1→XPause 200EndDispGraphEndDispGraphReturnLbl Q0→ARepeat A=8DispGraphHorizontal +Horizontal +Horizontal +Horizontal +Vertical +Vertical +Vertical +Vertical +DispGraphHorizontal -Horizontal -Horizontal -Horizontal -Vertical -Vertical -Vertical -Vertical -A+1→AEndReturnLbl SETref(1,1,5,22)ref(1,1,5,22)rref(2,2,3,20)rref(2,2,3,20)ReturnLbl W0→ARepeat A=40DispGraphA+1→AEndReturnLbl TSPPlot1(r₁,r₂,r₃)Plot1(r₁+8,r₂,r₃+16)ReturnLbl FSPPlot1(r₁,r₂,r₃)Plot1(r₁+8,r₂,r₃+16)Plot1(r₁,r₂+8,r₃+32)Plot1(r₁+8,r₂+8,r₃+48)ReturnLbl SSPPlot1(r₁,r₂,r₃)Plot1(r₁+8,r₂,r₃+16)Plot1(r₁+16,r₂,r₃+32)Plot1(r₁,r₂+8,r₃+48)Plot1(r₁+8,r₂+8,r₃+64)Plot1(r₁+16,r₂+8,r₃+80)ReturnLbl RCLconj(Pic0,L₃,768)conj(Pic00,L₆,768)Return
If X≤P:Text(4,55,XDec):EndIf X≤Q:Text(26,55,XDec):EndIf X≤R:Text(48,55,XDec):EndIf X≤S:Text(70,55,XDec):EndIf X>P:Text(4,55,PDec):EndIf X>Q:Text(26,55,QDec):EndIf X>R:Text(48,55,RDec):EndIf X>S:Text(70,55,SDec):End
Text(4,55,min(X,P)Dec)Text(26,55,min(X,Q)Dec)Text(48,55,min(X,R)Dec)Text(70,55,min(X,S)Dec)
That sounds nice, but then for the contest somebody will have to help me judging entries, because I haven't coded Axe in almost one year and I'll need to scan every entry to make sure only a certain percentage of Asm() and your new ASM feature is used, and sadly I might not make the difference between Axsembly stuff and regular Axe code.
2: ASM code must not compose more than 10% of your program code and the only allowed way to use assembly is via the Asm() command. The remaining 90% must be Axe or Axiom code. (See previous rule for Axiom information). Other languages such as TI-BASIC are NOT allowed.
:.TEST:Str1 ;1 Symbol:Str1 ;2 Symbols:Str1 ;3 Symbols:"H"->Str1 ;Now defined, so 1 symbol from now on:Str1 ;1 Symbol:Str1 ;1 Symbol:Str1 ;1 Symbol