proc rxencode { in } { #caps fix if { [scan [string index $in 1] %c] >= 65 && [scan [string index $in 1] %c] <= 90 } { set key [format %c [randrange 68 87]] set keynum [expr [scan $key %c] - 64] } else { if { [string index $in 0] >= 65 && [string index $in 0] <= 90 } { set key [format %c [randrange 68 87]] set keynum [expr [scan $key %c] - 64] set in "[string tolower [string index $in 0]][string range $in 1 end]" } else { set key [format %c [randrange 100 119]] set keynum [expr [scan $key %c] - 96] } } append out [format %c%s%c 15 $key 15] for {set x 0} {$x < [string length $in]} {incr x} { set curcharnum [scan [string index $in $x] %c] if { $curcharnum >= 65 && $curcharnum <=90 } { set rxe_x 64 } elseif { $curcharnum >= 97 && $curcharnum <=122 } { set rxe_x 96 } set curcharnum [expr $curcharnum - $rxe_x] } }