'=========================================================================== ' Subject: CODER/DECODER PROGRAM Date: 02-24-98 (13:26) ' Author: Aaron Andersen Code: QB, QBasic, PDS ' Origin: kc7gza@hotmail.com Packet: MISC.ABC '=========================================================================== '  Coder  ' This is my coder/decoder. It will encode what you type in a code That I  ' Made up and save it so you can decode it. Have fun.  ' E-mail me at Kc7gza@hotmail.com  ' ' ' ' ' DECLARE SUB decode () DECLARE SUB coder () CLEAR SCREEN 12 LINE (42, 237)-(109, 26), 4 LINE (111, 25)-(176, 237), 4 LINE (176, 237)-(16, 101), 4 LINE (16, 100)-(207, 100), 4 COLOR 2 LOCATE 11, 21: PRINT "1997" COLOR 3 LOCATE 13, 23: PRINT "Aaron" COLOR 9 LOCATE 15, 26: PRINT "Andersen" SLEEP SCREEN 0 345 CLS PRINT "welcome to the coder\decoder" PRINT " 1 Coder" PRINT " 2 Decoder" PRINT " 3 Exit" DO ir$ = UCASE$(INKEY$) LOOP UNTIL ir$ = "1" OR ir$ = "2" OR ir$ = "3" IF ir$ = "1" THEN CALL coder IF ir$ = "2" THEN CALL decode IF ir$ = "3" THEN END GOTO 345 333 ErrorHandler: CLS CLOSE #1 PRINT "File not found." SLEEP 1 CALL decode GOTO 345 SUB coder CLS PRINT "wellcome to the coder." PRINT "Hit a key" DO LOOP WHILE INKEY$ = "" CLS i = -1 a% = 1 b% = 1 DIM let$(27) let$(1) = "a" let$(2) = "b" let$(3) = "c" let$(4) = "d" let$(5) = "e" let$(6) = "f" let$(7) = "g" let$(8) = "h" let$(9) = "i" let$(10) = "j" let$(11) = "k" let$(12) = "l" let$(13) = "m" let$(14) = "n" let$(15) = "o" let$(16) = "p" let$(17) = "q" let$(18) = "r" let$(19) = "s" let$(20) = "t" let$(21) = "u" let$(22) = "v" let$(23) = "w" let$(24) = "x" let$(25) = "y" let$(26) = "z" PRINT PRINT GOTO 3 1 respond$ = UCASE$(INKEY$) IF respond$ = "" THEN GOTO 1 LOCATE a%, i + 1 PRINT respond$ IF respond$ = "A" THEN LOCATE a% + 1, i + 1 PRINT let$(1) code$ = code$ + let$(1) GOTO 2 END IF IF respond$ = "B" THEN LOCATE a% + 1, i + 1 PRINT let$(2) code$ = code$ + let$(2) GOTO 2 END IF IF respond$ = "C" THEN LOCATE a% + 1, i + 1 PRINT let$(3) code$ = code$ + let$(3) GOTO 2 END IF IF respond$ = "D" THEN LOCATE a% + 1, i + 1 PRINT let$(4) code$ = code$ + let$(4) GOTO 2 END IF IF respond$ = "E" THEN LOCATE a% + 1, i + 1 PRINT let$(5) code$ = code$ + let$(5) GOTO 2 END IF IF respond$ = "F" THEN LOCATE a% + 1, i + 1 PRINT let$(6) code$ = code$ + let$(6) GOTO 2 END IF IF respond$ = "G" THEN LOCATE a% + 1, i + 1 PRINT let$(7) code$ = code$ + let$(7) GOTO 2 END IF IF respond$ = "H" THEN LOCATE a% + 1, i + 1 PRINT let$(8) code$ = code$ + let$(8) GOTO 2 END IF IF respond$ = "I" THEN LOCATE a% + 1, i + 1 PRINT let$(9) code$ = code$ + let$(9) GOTO 2 END IF IF respond$ = "J" THEN LOCATE a% + 1, i + 1 PRINT let$(10) code$ = code$ + let$(10) GOTO 2 END IF IF respond$ = "K" THEN LOCATE a% + 1, i + 1 PRINT let$(11) code$ = code$ + let$(11) GOTO 2 END IF IF respond$ = "L" THEN LOCATE a% + 1, i + 1 PRINT let$(12) code$ = code$ + let$(12) GOTO 2 END IF IF respond$ = "M" THEN LOCATE a% + 1, i + 1 PRINT let$(13) code$ = code$ + let$(13) GOTO 2 END IF IF respond$ = "N" THEN LOCATE a% + 1, i + 1 PRINT let$(14) code$ = code$ + let$(14) GOTO 2 END IF IF respond$ = "O" THEN LOCATE a% + 1, i + 1 PRINT let$(15) code$ = code$ + let$(15) GOTO 2 END IF IF respond$ = "P" THEN LOCATE a% + 1, i + 1 PRINT let$(16) code$ = code$ + let$(16) GOTO 2 END IF IF respond$ = "Q" THEN LOCATE a% + 1, i + 1 PRINT let$(17) code$ = code$ + let$(17) GOTO 2 END IF IF respond$ = "R" THEN LOCATE a% + 1, i + 1 PRINT let$(18) code$ = code$ + let$(18) GOTO 2 END IF IF respond$ = "S" THEN LOCATE a% + 1, i + 1 PRINT let$(19) code$ = code$ + let$(19) GOTO 2 END IF IF respond$ = "T" THEN LOCATE a% + 1, i + 1 PRINT let$(20) code$ = code$ + let$(20) GOTO 2 END IF IF respond$ = "U" THEN LOCATE a% + 1, i + 1 PRINT let$(21) code$ = code$ + let$(21) GOTO 2 END IF IF respond$ = "V" THEN LOCATE a% + 1, i + 1 PRINT let$(22) code$ = code$ + let$(22) GOTO 2 END IF IF respond$ = "W" THEN LOCATE a% + 1, i + 1 PRINT let$(23) code$ = code$ + let$(23) GOTO 2 END IF IF respond$ = "X" THEN LOCATE a% + 1, i + 1 PRINT let$(24) code$ = code$ + let$(24) GOTO 2 END IF IF respond$ = "Y" THEN LOCATE a% + 1, i + 1 PRINT let$(25) code$ = code$ + let$(25) GOTO 2 END IF IF respond$ = "Z" THEN LOCATE a% + 1, i + 1 PRINT let$(26) code$ = code$ + let$(26) GOTO 2 END IF IF respond$ = CHR$(8) THEN code$ = MID$(code$, 1, (LEN(code$) - 1)) LOCATE a% + 1, i + 1 PRINT " " LOCATE a%, i + 1 PRINT " " i = i - 1 LOCATE a% + 1, i + 1 PRINT " " LOCATE a%, i + 1 PRINT " " FOR c = 26 TO 2 STEP -1 let$(c) = let$(c - 1) NEXT c let$(1) = let$(27) let$(27) = let$(26) i = i - 1 GOTO 3 END IF IF respond$ = CHR$(13) THEN CLS PRINT code$ INPUT "Do You want to save your code (Y/N)"; s$ IF s$ = "Y" OR s$ = "y" THEN GOTO 5 IF s$ = "N" OR s$ = "n" THEN PRINT "BYE" GOTO 690 END IF END IF LOCATE a% + 1, i + 1 PRINT respond$ code$ = code$ + respond$ 2 let$(27) = let$(1) FOR c = 1 TO 26 let$(c) = let$(c + 1) NEXT c 3 i = i + 1 IF i = 78 THEN a% = a% + 2 b% = b% + 2 LOCATE a%: PRINT " " i = 0 END IF 4 LOCATE b% + 1, 1 PRINT IF i < 26 THEN PRINT "#"; i; " " IF i > 25 AND i < 52 THEN PRINT "#"; i - 26; " " IF i > 51 THEN PRINT "#"; i - 52 PRINT " " PRINT "A ="; let$(1); " B ="; let$(2); " C ="; let$(3); " D ="; let$(4) PRINT "E ="; let$(5); " F ="; let$(6); " G ="; let$(7); " H ="; let$(8) PRINT "I ="; let$(9); " J ="; let$(10); " K ="; let$(11); " L ="; let$(12) PRINT "M ="; let$(13); " N ="; let$(14); " O ="; let$(15); " P ="; let$(16) PRINT "Q ="; let$(17); " R ="; let$(18); " S ="; let$(19); " T ="; let$(20) PRINT "U ="; let$(21); " V ="; let$(22); " W ="; let$(23); " X ="; let$(24) PRINT "Y ="; let$(25); " Z ="; let$(26) GOTO 1 5 INPUT "Save as"; as$ IF as$ = "" THEN as$ = "code.txt" FOR g = 1 TO LEN(as$) prt$ = MID$(as$, g, 1) IF prt$ = "." THEN GOTO 6 NEXT g IF MID$(as$, LEN(as$), 1) = "." THEN as$ = as$ + "txt" GOTO 6 END IF as$ = as$ + ".txt" 6 OPEN as$ FOR OUTPUT AS #1 PRINT #1, code$ CLOSE #1 PRINT "Your code has been saved as "; as$ SLEEP 1 SLEEP 1 690 END SUB SUB decode CLS PRINT "wellcome to the decoder." PRINT "Hit a key" DO LOOP WHILE INKEY$ = "" CLS i = 0 a% = 1 b% = 1 DIM let$(27) let$(1) = "a" let$(2) = "b" let$(3) = "c" let$(4) = "d" let$(5) = "e" let$(6) = "f" let$(7) = "g" let$(8) = "h" let$(9) = "i" let$(10) = "j" let$(11) = "k" let$(12) = "l" let$(13) = "m" let$(14) = "n" let$(15) = "o" let$(16) = "p" let$(17) = "q" let$(18) = "r" let$(19) = "s" let$(20) = "t" let$(21) = "u" let$(22) = "v" let$(23) = "w" let$(24) = "x" let$(25) = "y" let$(26) = "z" PRINT PRINT GOTO 100 100 FILES "*.txt" INPUT "enter file"; fl$ IF MID$(RIGHT$(fl$, 4), 1, 1) <> "." THEN fl$ = fl$ + ".txt" END IF ON ERROR GOTO 333 OPEN fl$ FOR INPUT AS #1 FOR y = 1 TO 10 IF EOF(1) = 0 THEN INPUT #1, line$ code$ = code$ + line$ END IF NEXT y CLOSE #1 CLS FOR h = 1 TO LEN(code$) num$ = MID$(code$, h, 1) GOTO 99 99 IF num$ = "a" THEN LOCATE a% + 1, i + 1 PRINT let$(1) GOTO 200 END IF IF num$ = "b" THEN LOCATE a% + 1, i + 1 PRINT let$(2) GOTO 200 END IF IF num$ = "c" THEN LOCATE a% + 1, i + 1 PRINT let$(3) GOTO 200 END IF IF num$ = "d" THEN LOCATE a% + 1, i + 1 PRINT let$(4) GOTO 200 END IF IF num$ = "e" THEN LOCATE a% + 1, i + 1 PRINT let$(5) GOTO 200 END IF IF num$ = "f" THEN LOCATE a% + 1, i + 1 PRINT let$(6) GOTO 200 END IF IF num$ = "g" THEN LOCATE a% + 1, i + 1 PRINT let$(7) GOTO 200 END IF IF num$ = "h" THEN LOCATE a% + 1, i + 1 PRINT let$(8) GOTO 200 END IF IF num$ = "i" THEN LOCATE a% + 1, i + 1 PRINT let$(9) GOTO 200 END IF IF num$ = "j" THEN LOCATE a% + 1, i + 1 PRINT let$(10) GOTO 200 END IF IF num$ = "k" THEN LOCATE a% + 1, i + 1 PRINT let$(11) GOTO 200 END IF IF num$ = "l" THEN LOCATE a% + 1, i + 1 PRINT let$(12) GOTO 200 END IF IF num$ = "m" THEN LOCATE a% + 1, i + 1 PRINT let$(13) GOTO 200 END IF IF num$ = "n" THEN LOCATE a% + 1, i + 1 PRINT let$(14) GOTO 200 END IF IF num$ = "o" THEN LOCATE a% + 1, i + 1 PRINT let$(15) GOTO 200 END IF IF num$ = "p" THEN LOCATE a% + 1, i + 1 PRINT let$(16) GOTO 200 END IF IF num$ = "q" THEN LOCATE a% + 1, i + 1 PRINT let$(17) GOTO 200 END IF IF num$ = "r" THEN LOCATE a% + 1, i + 1 PRINT let$(18) GOTO 200 END IF IF num$ = "s" THEN LOCATE a% + 1, i + 1 PRINT let$(19) GOTO 200 END IF IF num$ = "t" THEN LOCATE a% + 1, i + 1 PRINT let$(20) GOTO 200 END IF IF num$ = "u" THEN LOCATE a% + 1, i + 1 PRINT let$(21) GOTO 200 END IF IF num$ = "v" THEN LOCATE a% + 1, i + 1 PRINT let$(22) GOTO 200 END IF IF num$ = "w" THEN LOCATE a% + 1, i + 1 PRINT let$(23) GOTO 200 END IF IF num$ = "x" THEN LOCATE a% + 1, i + 1 PRINT let$(24) GOTO 200 END IF IF num$ = "y" THEN LOCATE a% + 1, i + 1 PRINT let$(25) GOTO 200 END IF IF num$ = "z" THEN LOCATE a% + 1, i + 1 PRINT let$(26) GOTO 200 END IF LOCATE a% + 1, i + 1 PRINT num$ 200 FOR c = 27 TO 2 STEP -1 let$(c) = let$(c - 1) NEXT c let$(1) = let$(27) 300 i = i + 1 IF i = 78 THEN a% = a% + 2 b% = b% + 2 LOCATE a%: PRINT " " i = 0 END IF LOCATE b% + 1, 1 PRINT PRINT " " NEXT h SLEEP SLEEP END SUB