REM
REM Demo implementing ROT13 encoder/decoder
REM
REM Theory here: http://en.wikipedia.org/wiki/ROT13
REM
REM June 2009 - PvE.
REM Revised November 2009.
REM

REM Get the separate arguments
SPLIT ARGUMENT$ BY " " TO arg$ SIZE dim

IF dim < 2 THEN
    PRINT "Usage: rot13 <string>"
    END
ENDIF

FOR i = 1 TO LEN(arg$[1])

    ch = ASC(MID$(arg$[1], i, 1))

    IF ch > 64 AND ch < 78 THEN
        PRINT CHR$(ch + 13);
    ELIF ch > 77 AND ch < 91 THEN
        PRINT CHR$(ch - 13);
    ELIF ch > 96 AND ch < 110 THEN
        PRINT CHR$(ch + 13);
    ELIF ch > 109 AND ch < 123 THEN
        PRINT CHR$(ch - 13);
    ELSE
        PRINT CHR$(ch);
    END IF

NEXT

PRINT