Hi Thanks for the insight. Fortunately my program is one big DO loop sounds like I'm structured like a POL in system RPL. I'm writing a program to decode text and ultimately send text to be converted into various radio signals on my KX3 Ham radio. I have a portion of the slow USER RPL code below. I've tried using both local variables and stack manipulation to get faster speeds.
«
« DSP DSPN WRP STRG
« 0 STRG SIZE WRP / CEIL DUP DUP DSPN MIN - SWAP 1 -
FOR I STRG I WRP * 1 + I 1 + WRP * SUB OVER DSP + DISP 1 +
NEXT DROP
»
» 1 WRP DECD
«
«
DO DECD
IF
THEN "TB;"
DO XMIT
UNTIL
END .05 WAIT BUFLEN DROP SRECV CLOSEIO DROP DUP SIZE 1 - 6 SWAP SUB RECSTR SWAP + DUP SIZE DUP 300 - SWAP SUB DUP -72 FS? { 1 6 33. } { 1 4 22. } IFTE 4 ROLL WRP EVAL 'RECSTR' STO
END
UNTIL KEY
END
»
« PICK3 PICK3 POS STRG MRK MDF PSN
«
IF MDF -1 ==
THEN STRG 1 PSN 2 - SUB MRK + STRG PSN 1 - DUP SUB STRG PSN 1 + STRG SIZE SUB + +
ELSE
IF MDF 1 ==
THEN STRG 1 PSN 1 - SUB STRG PSN 1 + DUP SUB MRK + + STRG PSN 2 + STRG SIZE SUB +
END
END
»
» { { "A" "B" "C" "D" "E" "F" "G" "H" "I" "J" "K" "L" "M" "N" "O" "P" "Q" "R" "S" "T" "U" "V" "W" "X" "Y" "Z" "0" "1" "2" "3" "4" "5" "6" "7" "8" "9" " "
« "Sel Msg Dec Off Utl Sel" { "MEM1 " "MEM2 " "MEM3 " } 2 CHOOSE NOT "" IFT
»
« -72. SF -90 SF "" CLLCD
»
« -72. CF -90 CF "" CLLCD
»
« ""
»
« ""
» ""
« 4 PICK DUP " " POS 2 - 1 SWAP SUB " " + 5 PICK DUP " " POS 1 + OVER SIZE SUB + 5 ROLL DROP 4 ROLLD ""
» "" "" "" "" } { 11. 12. 13. 14. 15. 16. 21. 22. 23. 31. 32. 33. 41. 42. 43. 44. 51. 52. 53. 54. 55. 61. 62. 63. 64. 65. 102. 92. 93. 94. 82. 83. 84. 72. 73. 74. 104. 25. 85. 95. 35. 71. 81. 45. 103. 75. 105. 91. } } REC MOV TXT
« CLLCD " "
DO REC EVAL DUP
IF DUP 34. == SWAP 36 == OR
THEN SWAP " " PICK3 34 == -1 1 IFTE MOV EVAL DUP -72 FS? { 8 4 33. } { 6 4 22. } IFTE 4 ROLL WRP EVAL SWAP
ELSE TXT OBJ DROP PICK3 POS GETI EVAL UNROT DROP2 ROT DUP " " POS ROT " " + REPL DUP UNROT -72 FS? { 8 4 33. } { 6 4 22. } IFTE 4 ROLL WRP EVAL
END
UNTIL DUP 103. ==
« 1 'DECD' STO
»
« DUP 75. ==
« 0 'DECD' STO
» IFT
» IFTE 81. ==
END
»
»
»