A drawing program which can also rotate your pictures (QBASIC)
SCREEN 13
CLS
DIM a(320, 100) AS INTEGER
DIM b(320, 101 TO 180) AS INTEGER
x = 160
y = 90
p = 1
col = 15
LOCATE 24, 1
PRINT "Pen", "Color: "; : COLOR col: PRINT col;
LINE (0, 0)-(319, 180), , B
10
SELECT CASE INKEY$
CASE " "
END
CASE "w"
y = y - 1: d = 1
CASE "z"
y = y + 1: d = 2
CASE "a"
x = x - 1: d = 3
CASE "s"
x = x + 1: d = 4
CASE "p"
IF p = 1 THEN
p = 0
LOCATE 24, 1
PRINT "Eraser", "Color: N/A";
ELSE
p = 1
LOCATE 24, 1
PRINT "Pen ", "Color: "; : COLOR col: PRINT col;
END IF
CASE "f"
GOSUB 1000
CASE "1"
col = 1: GOTO 101
CASE "2"
col = 2: GOTO 101
CASE "3"
col = 3: GOTO 101
CASE "5"
col = 5: GOTO 101
CASE "6"
col = 6: GOTO 101
CASE "7"
col = 7: GOTO 101
CASE "8"
col = 8: GOTO 101
CASE "9"
col = 9: GOTO 101
CASE "0"
col = 10: GOTO 101
END SELECT
101 IF p = 1 THEN
LOCATE 24, 1
PRINT "Pen ", "Color: "; : COLOR col: PRINT col;
END IF
IF p = 1 THEN
PSET (x, y), col
PSET (320 - x, 179 - y), col
ELSE
PSET (x, y), 4
IF d = 1 AND POINT(x, y + 1) = 4 THEN PSET (x, y + 1), 0
IF d = 2 AND POINT(x, y - 1) = 4 THEN PSET (x, y - 1), 0
IF d = 3 AND POINT(x + 1, y) = 4 THEN PSET (x + 1, y), 0
IF d = 4 AND POINT(x - 1, y) = 4 THEN PSET (x - 1, y), 0
END IF
GOTO 10
1000
'Read 1 to 100
FOR y = 0 TO 100
FOR x = 0 TO 319
a(x, y) = POINT(x, y)
NEXT
NEXT
'Read 101 to 180
FOR y = 101 TO 180
FOR x = 0 TO 319
b(x, y) = POINT(x, y)
NEXT
NEXT
'Print 1 to 100
FOR y = 0 TO 100
FOR x = 0 TO 319
PSET (319 - x, 180 - y), a(x, y)
NEXT
NEXT
'Print 101 to 180
FOR y = 101 TO 180
FOR x = 0 TO 319
PSET (319 - x, 180 - y), b(x, y)
NEXT
NEXT