; Calcuate pi (transcribed from C to Orthogonal by Brian Raiter, 6/96) ; ; First argument to program specifies number of decimal digits to compute. :set ArgRow = 8 :set MaxArgs = 16 :set aY = ArgRow :set aiX = 2 :set aiY = 0 [0,0] 0 L 00 @ aY ~ = @ ? cw $ $ 2 + @ 10 * 3 / - nop '0' ~ + 1 cw * 10 ~ # aiX aiY + cw :set LX = 47 :set d3X = 31 :set d3Y = 6 :set vX = 28 :set vY = 5 :set wX = 27 :set wY = 9 :set qX = 27 :set qY = 13 :set hX = 27 :set hY = 17 :set aX = 31 :set aY = 15 :set i2X = 31 :set i2Y = 14 [18,0] @ d3Y d3X # L @ ? cw L ~ @ ? cw c $ 0 ret - @ 1 ~ 1 2 - 0 nop ~ 1 qY cw # LX cw K d ccw qX cw 00 ccw # ? 00 cw hX # ccw ccw ? @ H hY $ @ - % 00 ccw @ rev 1 10 vY @ # # vX qY LX wX # qX ~ wY 00 = % cw vY vX # $ 0 K @ * 00 cw + 1 = vX vY cw 10 ~ 00 ? / LX # ! 00 = qX - + 10 qY cw 10 @ cw * / + # @ i2X aY i2Y aX @ # - ~ 1 ccw 2 * ccw