Here is the BASIC source code:

(define amazing '( (1000 print tab (28) "AMAZING PROGRAM" ) (1010 print tab (15) "CREATIVE COMPUTING MORRISTOWN, NEW JERSEY" ) (1020 print ) (1030 input "WHAT IS YOUR WIDTH" h ) (1040 input "WHAT IS YOUR HEIGHT" u ) (1050 dim w (h u) ) (1060 dim v (h u) ) (1070 print ) (1080 let q = 0 ) (1090 let z = 0 ) (1100 let x = int (((rnd (1) * h) + 1)) ) (1110 for i1 = 1 to h ) (1120 if (i1 = x) then 1150 ) (1130 print! ".--" ) (1140 goto 1160 ) (1150 print! ". " ) (1160 next i1 ) (1170 print "." ) (1180 let c = 1 ) (1190 let w (x 1) = c ) (1200 let c = (c + 1) ) (1210 let r = x ) (1220 let s = 1 ) (1230 goto 1340 ) (1240 if (r <> h) then 1320 ) (1250 if (s <> u) then 1290 ) (1260 let r = 1 ) (1270 let s = 1 ) (1280 goto 1330 ) (1290 let r = 1 ) (1300 let s = (s + 1) ) (1310 goto 1330 ) (1320 let r = (r + 1) ) (1330 if (w (r s) = 0) then 1240 ) (1340 if ((r - 1) = 0) then 1700 ) (1350 if (w ((r - 1) s) <> 0) then 1700 ) (1360 if ((s - 1) = 0) then 1510 ) (1370 if (w (r (s - 1)) <> 0) then 1510 ) (1380 if (r = h) then 1420 ) (1390 if (w ((r + 1) s) <> 0) then 1420 ) (1400 let x = int (((rnd (1) * 3) + 1)) ) (1410 on x goto 2070 2140 2210 ) (1420 if (s <> u) then 1460 ) (1430 if (z = 1) then 1490 ) (1440 let q = 1 ) (1450 goto 1470 ) (1460 if (w (r (s + 1)) <> 0) then 1490 ) (1470 let x = int (((rnd (1) * 3) + 1)) ) (1480 on x goto 2070 2140 2300 ) (1490 let x = int (((rnd (1) * 2) + 1)) ) (1500 on x goto 2070 2140 ) (1510 if (r = h) then 1620 ) (1520 if (w ((r + 1) s) <> 0) then 1620 ) (1530 if (s <> u) then 1570 ) (1540 if (z = 1) then 1600 ) (1550 let q = 1 ) (1560 goto 1580 ) (1570 if (w (r (s + 1)) <> 0) then 1600 ) (1580 let x = int (((rnd (1) * 3) + 1)) ) (1590 on x goto 2070 2210 2300 ) (1600 let x = int (((rnd (1) * 2) + 1)) ) (1610 on x goto 2070 2210 ) (1620 if (s <> u) then 1660 ) (1630 if (z = 1) then 1690 ) (1640 let q = 1 ) (1650 goto 1670 ) (1660 if (w (r (s + 1)) <> 0) then 1690 ) (1670 let x = int (((rnd (1) * 2) + 1)) ) (1680 on x goto 2070 2300 ) (1690 goto 2070 ) (1700 if ((s - 1) = 0) then 1910 ) (1710 if (w (r (s - 1)) <> 0) then 1910 ) (1720 if (r = h) then 1830 ) (1730 if (w ((r + 1) s) <> 0) then 1830 ) (1740 if (s <> u) then 1780 ) (1750 if (z = 1) then 1810 ) (1760 let q = 1 ) (1770 goto 1790 ) (1780 if (w (r (s + 1)) <> 0) then 1810 ) (1790 let x = int (((rnd (1) * 3) + 1)) ) (1800 on x goto 2140 2210 2300 ) (1810 let x = int (((rnd (1) * 2) + 1)) ) (1820 on x goto 2140 2210 ) (1830 if (s <> u) then 1870 ) (1840 if (z = 1) then 1900 ) (1850 let q = 1 ) (1860 goto 1880 ) (1870 if (w (r (s + 1)) <> 0) then 1900 ) (1880 let x = int (((rnd (1) * 2) + 1)) ) (1890 on x goto 2140 2300 ) (1900 goto 2140 ) (1910 if (r = h) then 2010 ) (1920 if (w ((r + 1) s) <> 0) then 2010 ) (1930 if (s <> u) then 1970 ) (1940 if (z = 1) then 2000 ) (1950 let q = 1 ) (1960 goto 2150 ) (1970 if (w (r (s + 1)) <> 0) then 2000 ) (1980 let x = int (((rnd (1) * 2) + 1)) ) (1990 on x goto 2210 2300 ) (2000 goto 2210 ) (2010 if (s <> u) then 2050 ) (2020 if (z = 1) then 1240 ) (2030 let q = 1 ) (2040 goto 2060 ) (2050 if (w (r (s + 1)) <> 0) then 1240 ) (2060 goto 2300 ) (2070 let w ((r - 1) s) = c ) (2080 let c = (c + 1) ) (2090 let v ((r - 1) s) = 2 ) (2100 let r = (r - 1) ) (2110 if (c = ((h * u) + 1)) then 2500 ) (2120 let q = 0 ) (2130 goto 1340 ) (2140 let w (r (s - 1)) = c ) (2150 let c = (c + 1) ) (2160 let v (r (s - 1)) = 1 ) (2170 let s = (s - 1) ) (2180 if (c = ((h * u) + 1)) then 2500 ) (2190 let q = 0 ) (2200 goto 1340 ) (2210 let w ((r + 1) s) = c ) (2220 let c = (c + 1) ) (2230 if (v (r s) = 0) then 2260 ) (2240 let v (r s) = 3 ) (2250 goto 2270 ) (2260 let v (r s) = 2 ) (2270 let r = (r + 1) ) (2280 if (c = ((h * u) + 1)) then 2500 ) (2290 goto 1700 ) (2300 if (q = 1) then 2400 ) (2310 let w (r (s + 1)) = c ) (2320 let c = (c + 1) ) (2330 if (v (r s) = 0) then 2360 ) (2340 let v (r s) = 3 ) (2350 goto 2370 ) (2360 let v (r s) = 1 ) (2370 let s = (s + 1) ) (2380 if (c = ((h * u) + 1)) then 2500 ) (2390 goto 1340 ) (2400 let z = 1 ) (2410 if (v (r s) = 0) then 2450 ) (2420 let v (r s) = 3 ) (2430 let q = 0 ) (2440 goto 1240 ) (2450 let v (r s) = 1 ) (2460 let q = 0 ) (2470 let r = 1 ) (2480 let s = 1 ) (2490 goto 1330 ) (2500 for j1 = 1 to u ) (2510 print! "I" ) (2520 for i2 = 1 to h ) (2530 if (v (i2 j1) < 2) then 2560 ) (2540 print! " " ) (2550 goto 2570 ) (2560 print! " I" ) (2570 next i2 ) (2580 print ) (2590 for i3 = 1 to h ) (2600 if (v (i3 j1) = 0) then 2640 ) (2610 if (v (i3 j1) = 2) then 2640 ) (2620 print! ": " ) (2630 goto 2650 ) (2640 print! ":--" ) (2650 next i3 ) (2660 print "." ) (2670 next j1 ) (2680 end )))

Here is a sample run:

> (basic-run amazing) AMAZING PROGRAM CREATIVE COMPUTING MORRISTOWN, NEW JERSEY WHAT IS YOUR WIDTH? 24 WHAT IS YOUR HEIGHT? 18 .--.--.--.--.--.--.--.--.--.--.--.--.--.--.--. .--.--.--.--.--.--.--.--. I I I I I I I I I I : :--:--: : :--: :--: : : : : : : : :--: : : :--:--:--: . I I I I I I I I I I I I I I I I : : : : : : : : :--:--:--:--:--: : :--: : : :--:--:--: : . I I I I I I I I I I I I I I : : : :--: : : :--:--: :--:--:--:--: :--:--: : : : :--:--:--. I I I I I I I I I I I I I I : : :--:--:--:--:--: : :--: :--: : :--:--: : :--:--:--:--: : . I I I I I I I I I I I : : : : : : :--:--: : :--: :--:--:--:--:--:--:--: : :--:--: . I I I I I I I I I I I I I I :--: : : :--:--:--: :--:--: :--: : :--: : : : :--: :--:--: . I I I I I I I I I I I : :--: :--: :--: :--:--: :--:--:--:--: :--:--:--:--: : :--:--:--. I I I I I I I I I I :--: :--: :--:--:--:--: :--:--:--: : :--: :--:--:--:--: : :--: . I I I I I I I I I I I : :--: :--: : :--:--: :--: : :--:--: : :--:--:--: :--:--: :--. I I I I I I I I I I I I I : : :--: : :--:--: :--: : : : :--:--:--: : : :--:--: :--: . I I I I I I I I I I I I I I I I I : : : :--: : : :--: :--: :--:--: : : : : : : :--:--: :--. I I I I I I I I I I I I I I I : : :--: :--: : : :--: :--:--:--: : :--:--:--: : :--: :--: . I I I I I I I I I I I I : :--: :--:--:--: : : :--: : :--:--:--:--:--:--:--: : : :--:--. I I I I I I I I I I I I I :--: : : :--: :--:--: : :--:--: : : : :--: : :--:--: : :--. I I I I I I I I I I I I I : :--:--:--:--:--: : : : : : :--: :--:--: :--:--:--:--:--:--: . I I I I I I I I I I I I I : : : :--: :--: : :--:--: : : :--: : :--:--:--:--: : :--: . I I I I I I I I I I I I I I I :--:--:--: :--: : :--: : :--: : : : : : : : : :--:--:--:--. I I I I I I I I I :--:--:--:--:--:--:--:--:--:--:--:--: :--:--:--:--:--:--:--:--:--:--:--. >