Source:Dungeon Blank Map Maker
Jump to navigation
Jump to search
| This page is a verbatim reproduction of original source material and should not be edited except for maintenance. | |
| Description |
The Applesoft BASIC source code of the Eamon utility program Dungeon Blank Map Maker. |
|---|---|
| Source | |
| Date |
November 1994 |
| Author |
Phillip Moore, with additions by Tom Zuchowski |
| License |
The use of this item is permitted on the grounds that it's free or in the public domain. |
10 REM DUNGEON BLANK MAP MAKER 1.0 20 REM 30 REM PHILLIP MOORE 40 REM NOV 1994 50 REM 60 REM MANY INPUTS BY 70 REM TOM ZUCHOWSKI 80 REM 90 REM EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012-9408 100 REM *********************** 110 REM SET, DESCRIBE VARIABLES 120 REM *********************** 130 REM SPC = SPACES USED IN FOR NEXT LOOPS 140 REM A, B, C, D = COUNTERS IN FOR NEXT LOOPS 150 REM A$ = Y/N ANSWERS TO QUESTIONS 160 REM DL$ = DASH LINE 170 REM NP$ = VIEW NEXT PAGE INPUT 180 REM VL$ = VERTICAL LINE 190 REM PR$ = PRINTS SELECTED PRINTER ON SCREEN 200 REM MS$ = MACHANICAL SWITCH FOR NON ASCII PRINTER 210 LP = 0: REM LPI INDICATOR 220 CP = 0: REM CPI INDICATOR 230 SL = 0: REM PRINTER SLOT LOCATION 240 PR = 0: REM SELECTED PRINTER 250 D$ = CHR$ (4): REM CONTROL D (DOS COMMAND) 260 CS = 7: REM COLUMN SPACE 270 CO = 0: REM # COLUMNS 280 BH = 0: REM BOX HEIGHT 290 BL = 0: REM BLANK LINES 300 CY = 0: REM # OF COPIES 310 RO = 0: REM # OF ROWS 320 TB = 0: REM TOTAL BLOCKS PER PG 1000 REM *********************** 1010 REM START UP SCREEN 1020 REM *********************** 1030 IF SL > 0 AND PR > 0 THEN 2000 1040 CALL - 936: HTAB 6: INVERSE : PRINT "DUNGEON BLANK MAP MAKER 2.0": NORMAL 1050 VTAB 13: PRINT "DO YOU WISH TO SEE THE NOTES Y/N? [ ]" 1060 A$ = "N": HTAB 36: VTAB 13: PRINT A$ CHR$ (8);: REM SELF PROMPT 1070 GET A$: PRINT A$ 1080 IF A$ = "Y" OR A$ = "y" THEN PRINT D$;"RUN MAP.MAKER.NOTES" 1090 IF A$ = "N" OR A$ = "n" OR A$ = CHR$ (13) THEN 2000 1100 IF A$ < > "Y" AND A$ < > "N" THEN 1050 2000 REM *********************** 2010 REM SCREEN STUFF 2020 REM *********************** 2030 GOSUB 8030: REM SCREEN STUFF 2040 HTAB 7: VTAB 5: PRINT "PRESS 1 FOR 4 ROWS" 2050 HTAB 7: VTAB 6: PRINT "PRESS 2 FOR 5 ROWS" 2060 HTAB 7: VTAB 7: PRINT "PRESS 3 FOR 6 ROWS" 2070 HTAB 7: VTAB 8: PRINT "PRESS 4 FOR 7 ROWS 2080 HTAB 7: VTAB 9: PRINT "PRESS 5 FOR 8 ROWS" 2090 HTAB 7: VTAB 10: PRINT "PRESS 6 FOR 9 ROWS" 2100 HTAB 7: VTAB 11: PRINT "PRESS 7 FOR 10 ROWS" 2110 HTAB 7: VTAB 15: PRINT "HOW MANY ROWS (1 - 7)?"; 2120 GET RO: PRINT RO; 2130 IF RO < 1 OR RO > 7 THEN 2110 2140 IF RO = 1 THEN LET RO = 4: GOTO 2210: REM 4 ROWS 2150 IF RO = 2 THEN LET RO = 5: GOTO 2210: REM 5 ROWS 2160 IF RO = 3 THEN LET RO = 6: GOTO 2210: REM 6 ROWS 2170 IF RO = 4 THEN LET RO = 7: GOTO 2210: REM 7 ROWS 2180 IF RO = 5 THEN LET RO = 8: REM 8 ROWS 2190 IF RO = 6 THEN LET RO = 9: REM 9 ROWS 2200 IF RO = 7 THEN LET RO = 10: REM 10 ROWS 2210 HTAB 5: VTAB 17: INPUT "HOW MANY COLUMNS (4 - 10)?";CO 2220 IF CO < 4 OR CO > 10 THEN 2210 2230 HTAB 10: VTAB 19: INPUT "HOW MANY COPIES?";CY 2240 IF CY < 1 THEN 2230 2250 GOSUB 8030: REM SCREEN STUFF 2260 GOSUB 8060: REM SCREEN STUFF 2270 IF SL > 0 AND PR > 0 THEN 2620: REM AVOIDS REQUIREMENT OF 2ND INPUT OF PRINTER AND SLOT INFORMATION 2280 HTAB 1: VTAB 18: PRINT "WHAT SLOT IS YOUR PRINTER IN (1 - 4)?"; 2290 GET SL: PRINT SL; 2300 IF SL < 1 OR SL > 4 THEN 2280 2310 CALL - 936: VTAB 1: HTAB 12: INVERSE : PRINT "SELECT YOUR PRINTER": NORMAL 2320 HTAB 13: VTAB 3: PRINT "1. OKIDATA 92 & 93" 2330 HTAB 13: VTAB 4: PRINT "2. STAR" 2340 HTAB 13: VTAB 5: PRINT "3. STAR MICRO" 2350 HTAB 13: VTAB 6: PRINT "4. PANASONIC KX-P1124" 2360 HTAB 13: VTAB 7: PRINT "5. IMAGEWRITER I & II" 2370 HTAB 13: VTAB 8: PRINT "6. EPSON LX, LQ" 2380 HTAB 13: VTAB 9: PRINT "7. YOUR PRINTER": REM PUT YOUR PRINTER NAME HERE 2390 HTAB 13: VTAB 10: PRINT "8. NON ASCII PRINTER": REM NON ASCII CONTROL PRINTER 2400 REM REMOVE THE REMS, ADD THE REQUIRED NAME AND CODE IN LINE NUMBERS 2380, 2510, 5480 - 6000, 7310 - 7330, ADD 80 COL INTERFACE CODE AS REQUIRED TO 5030 - 5040 2410 HTAB 12: VTAB 23: PRINT "SELECT PRINTER?"; 2420 GET PR: PRINT PR; 2430 IF PR < 1 OR PR > 8 THEN 2410 2440 GOSUB 8030: REM SCREEN STUFF 2450 IF PR = 1 THEN LET PR$ = "OKIDATA 92 & 93" 2460 IF PR = 2 THEN LET PR$ = "STAR" 2470 IF PR = 3 THEN LET PR$ = "STAR MICRO" 2480 IF PR = 4 THEN LET PR$ = "PANASONIC KX-P1124" 2490 IF PR = 5 THEN LET PR$ = "IMAGEWRITER I & II" 2500 IF PR = 6 THEN LET PR$ = "EPSON LX, LQ" 2510 IF PR = 7 THEN LET PR$ = "YOUR PRINTER": REM ADD YOUR PRINTER NAME 2520 IF PR = 8 THEN LET PR$ = "NON ASCII PRINTER": REM NON ASCII CONTROL PRINTER 2530 HTAB 4: VTAB 14: INVERSE : PRINT "YOUR PRINTER IS ";PR$: NORMAL 2540 HTAB 7: VTAB 15: INVERSE : PRINT "YOUR PRINTER IS IN SLOT ";SL: NORMAL 2550 GOSUB 8060: REM SCREEN STUFF 2560 HTAB 6: VTAB 18: PRINT "PRINTER TURNED ON Y/N? [ ]" 2570 A$ = "Y": HTAB 30: VTAB 18: PRINT A$ CHR$ (8);: REM SELF PROMPT 2580 GET A$: PRINT A$ 2590 IF A$ = "Y" OR A$ = "y" OR A$ = CHR$ (13) THEN 2620 2600 IF A$ = "N" OR A$ = "n" THEN 8170 2610 IF A$ < > "Y" AND A$ < > "N" THEN 2560 2620 IF PR < > 8 THEN 3000: REM SKIP OVER 10/12 - 17 CPI, 6 - 8 LPI SELECTOR 2630 REM LINES 2640 - 2810 ARE LINES NEEDED TO ALLOW A MECHANICAL SWITCH TO BE MOVED TO SWITCH BETWEEN 10/12, 17 CPI, 6 - 8 LPI 2640 REM ** PRINTER 10/12 - 17 CPI SELECTOR ** 2650 IF CO < = 5 AND CP = 10 THEN 3000 2660 IF CO < = 5 THEN CP = 10: VTAB 19: HTAB 8: PRINT "SET PRINTER TO 10 CPI NOW": VTAB 23: HTAB 8: INPUT "PRESS RETURN TO CONTINUE";MS$ 2670 IF MS$ = CHR$ (13) THEN 3000: REM 10 CPI 2680 IF CO = > 9 THEN 2720 2690 IF CO = > 6 AND CP = 12 THEN 3000 2700 IF CO = > 6 THEN CP = 12: VTAB 19: HTAB 8: PRINT "SET PRINTER TO 12 CPI NOW": VTAB 23: HTAB 8: INPUT "PRESS RETURN TO CONTINUE";MS$ 2710 IF MS$ = CHR$ (13) THEN 3000: REM 12 CPI 2720 IF CO = > 9 AND CP = 17 THEN 3000 2730 IF CO = > 9 THEN CP = 17: VTAB 19: HTAB 8: PRINT "SET PRINTER TO 17 CPI NOW": VTAB 23: HTAB 8: INPUT "PRESS RETURN TO CONTINUE";MS$ 2740 IF MS$ = CHR$ (13) THEN 3000: REM 17 CPI 2750 IF RO < = 5 AND LP = 8 THEN 2770 2760 IF RO = > 6 THEN 2790 2770 IF RO < = 5 THEN LP = 6: VTAB 21: HTAB 8: PRINT "SET PRINTER TO 6 LPI NOW": VTAB 23: HTAB 8: INPUT "PRESS RETURN TO CONTINUE";MS$ 2780 IF MS$ = CHR$ (13) THEN 3000: REM 6 LPI 2790 IF RO = > 6 AND LP = 8 THEN 3000 2800 IF RO = > 6 THEN LP = 8: VTAB 21: HTAB 8: PRINT "SET PRINTER TO 8 LPI NOW": VTAB 23: HTAB 8: INPUT "PRESS RETURN TO CONTINUE";MS$ 2810 IF MS$ = CHR$ (13) THEN 3000: REM 8 LPI 3000 REM *********************** 3010 REM BOX SIZE & SPACING 3020 REM *********************** 3030 IF RO = 4 THEN 3100: REM 4 ROWS 3040 IF RO = 5 THEN 3170: REM 5 ROWS 3050 IF RO = 6 THEN 3240: REM 6 ROWS 3060 IF RO = 7 THEN 3310: REM 7 ROWS 3070 IF RO = 8 THEN 3380: REM 8 ROWS 3080 IF RO = 9 THEN 3450: REM 9 ROWS 3090 IF RO = 10 THEN 3520: REM 10 ROWS 3100 REM 4 ROWS 3110 LET BH = 8: LET BL = 6: REM BOX HEIGHT, BLANK LINES 3120 IF CO = 4 THEN 4000: REM 16 BLOCKS 3130 IF CO = 5 THEN CS = 5: GOTO 4000: REM 20 BLOCKS 3140 IF CO = 6 OR CO = 7 THEN CS = 4: GOTO 4000: REM 24 - 28 BLOCKS 3150 IF CO = 8 OR CO = 9 THEN CS = 3: GOTO 4000: REM 32 - 36 BLOCKS 3160 IF CO = 10 THEN CS = 2: GOTO 4000: REM 40 BLOCKS 3170 REM 5 ROWS 3180 LET BH = 6: LET BL = 5: REM BOX HEIGHT, BLANK LINES 3190 IF CO = 4 THEN 4000: REM 20 BLOCKS 3200 IF CO = 5 THEN CS = 5: GOTO 4000: REM 25 BLOCKS 3210 IF CO = 6 THEN CS = 4: GOTO 4000: REM 30 BLOCKS 3220 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 35 - 45 BLOCKS 3230 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 40 - 50 BLOCKS 3240 REM 6 ROWS 3250 LET BH = 7: LET BL = 5: REM BOX HEIGHT, BLANK LINES 3260 IF CO = 4 THEN 4000: REM 24 BLOCKS 3270 IF CO = 5 THEN CS = 5: GOTO 4000: REM 30 BLOCKS 3280 IF CO = 6 THEN CS = 4: GOTO 4000: REM 36 BLOCKS 3290 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 42 - 54 BLOCKS 3300 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 48 - 60 BLOCKS 3310 REM 7 ROWS 3320 LET BH = 6: LET BL = 4: REM BOX HEIGHT, BLANK LINES 3330 IF CO = 4 THEN 4000: REM 28 BLOCKS 3340 IF CO = 5 THEN CS = 5: GOTO 4000: REM 35 BLOCKS 3350 IF CO = 6 THEN CS = 4: GOTO 4000: REM 42 BLOCKS 3360 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 49 - 63 BLOCKS 3370 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 56 - 70 BLOCKS 3380 REM 8 ROWS 3390 LET BH = 6: LET BL = 3: REM BOX HEIGHT, BLANK LINES 3400 IF CO = 4 THEN 4000: REM 32 BLOCKS 3410 IF CO = 5 THEN CS = 5: GOTO 4000: REM 40 BLOCKS 3420 IF CO = 6 THEN CS = 4: GOTO 4000: REM 48 BLOCKS 3430 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 56 - 72 BLOCKS 3440 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 64 - 80 BLOCKS 3450 REM 9 ROWS 3460 LET BH = 5: LET BL = 3: REM BOX HEIGHT, BLANK LINES 3470 IF CO = 4 THEN 4000: REM 36 BLOCKS 3480 IF CO = 5 THEN CS = 5: GOTO 4000: REM 45 BLOCKS 3490 IF CO = 6 THEN CS = 4: GOTO 4000: REM 54 BLOCKS 3500 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 63 - 81 BLOCKS 3510 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 72 - 90 BLOCKS 3520 REM 10 ROWS 3530 LET BH = 4: LET BL = 3: REM BOX HEIGHT, BLANK LINES 3540 IF CO = 4 THEN 4000: REM 40 BLOCKS 3550 IF CO = 5 THEN CS = 5: GOTO 4000: REM 50 BLOCKS 3560 IF CO = 6 THEN CS = 4: GOTO 4000: REM 60 BLOCKS 3570 IF CO = 7 OR CO = 9 THEN CS = 3: GOTO 4000: REM 70 - 90 BLOCKS 3580 IF CO = 8 OR CO = 10 THEN CS = 2: GOTO 4000: REM 80 - 100 BLOCKS 4000 REM *********************** 4010 REM GET DL$ & VL$ SIZE 4020 REM *********************** 4030 REM WHEN REDUCING DL$ - REDUCE VL$ AN EQUAL NUMBER FOR THE SAME CO NUMBER 4040 DL$ = " ------------ ": REM TOPS & BOTTOMS OF BOX 12 DASHES, 2 SPACES 4050 IF CO > 4 THEN LET DL$ = " ---------- ": REM 10 DASHES, 2 SPACES 4060 IF CO > 5 THEN LET DL$ = " --------- ": REM 9 DASHES, 2 SPACES 4070 IF CO > 6 THEN LET DL$ = " -------- ": REM 8 DASHES, 2 SPACES 4080 IF CO = 8 THEN LET DL$ = " ------- ": REM 7 DASHES, 2 SPACES 4090 IF CO = 9 THEN LET DL$ = " ---------- ": REM 10 DASHES, 2 SPACES 4100 IF CO = 10 THEN LET DL$ = " --------- ": REM 9 DASHES, 2 SPACES 4110 REM WHEN REDUCING VL$ - REDUCE DL$ AN EQUAL NUMBER FOR THE SAME CO NUMBER 4120 VL$ = "| |": REM SIDES OF BOX 12 SPACES 4130 IF CO > 4 THEN LET VL$ = "| |": REM 10 SPACES 4140 IF CO > 5 THEN LET VL$ = "| |": REM 9 SPACES 4150 IF CO > 6 THEN LET VL$ = "| |": REM 8 SPACES 4160 IF CO = 8 THEN LET VL$ = "| |": REM 7 SPACES 4170 IF CO = 9 THEN LET VL$ = "| |": REM 10 SPACES 4180 IF CO = 10 THEN LET VL$ = "| |": REM 9 SPACES 5000 REM *********************** 5010 REM PRINTER CODES 5020 REM *********************** 5030 PRINT D$;"PR#";SL: REM WAKES UP PRINTER INTERFACE IN SLOT SL 5040 REM SPARE LINE FOR YOUR USE 5050 IF PR = 1 THEN 5130: REM SELECTS OKIDATA 92 & 93 PRINTER CODES 5060 IF PR = 2 THEN 5200: REM SELECTS STAR PRINTER CODES 5070 IF PR = 3 THEN 5270: REM SELECTS STAR MICRO PRINTER CODES 5080 IF PR = 4 THEN 5340: REM SELECTS PANASONIC KX-P1124 PRINTER CODES 5090 IF PR = 5 THEN 5410: REM SELECTS IMAGEWRITER I & II PRINTER CODES 5100 IF PR = 6 THEN 5200: REM SELECTS EPSON LX, LQ PRINTER CODES 5110 IF PR = 7 THEN 5480: REM GETS YOUR PRINTER CODES 5120 IF PR = 8 THEN 6000: REM NON ASCII PRINTER CONTROL 5130 REM **** OKIDATA 92 & 93 PRINTER CODES 5140 IF RO < = 5 THEN PRINT CHR$ (27); CHR$ (54): REM 6 LPI 5150 IF RO = > 6 THEN PRINT CHR$ (27); CHR$ (56): REM 8 LPI 5160 IF CO < = 5 THEN PRINT CHR$ (30): REM 10 CPI 5170 IF CO = > 6 THEN PRINT CHR$ (28): REM 12 CPI 5180 IF CO = > 9 THEN PRINT CHR$ (29): REM 17 CPI 5190 GOTO 6000 5200 REM **** STAR, EPSON LX, LQ PRINTER CODES 5210 IF RO < = 5 THEN PRINT CHR$ (27); CHR$ (50): REM 6 LPI 5220 IF RO = > 6 THEN PRINT CHR$ (27); CHR$ (48): REM 8 LPI 5230 IF CO < = 5 THEN PRINT CHR$ (27); CHR$ (80): REM 10 CPI 5240 IF CO = > 6 THEN PRINT CHR$ (27); CHR$ (77): REM 12 CPI 5250 IF CO = > 9 THEN PRINT CHR$ (15): REM 17 CPI 5260 GOTO 6000 5270 REM **** STAR MICRO PRINTER CODES 5280 IF RO < = 5 THEN PRINT CHR$ (27); CHR$ (50): REM 6 LPI 5290 IF RO = > 6 THEN PRINT CHR$ (27); CHR$ (48): REM 8 LPI 5300 IF CO < = 5 THEN PRINT CHR$ (27); CHR$ (66); CHR$ (1): REM 10 CPI 5310 IF CO = > 6 THEN PRINT CHR$ (27); CHR$ (66); CHR$ (2): REM 12 CPI 5320 IF CO = > 9 THEN PRINT CHR$ (27); CHR$ (66); CHR$ (3): REM 17 CPI 5330 GOTO 6000 5340 REM **** PANASONIC KX-P1124 PRINTER CODES 5350 IF RO < = 5 THEN PRINT CHR$ (27); CHR$ (50): REM 6 LPI 5360 IF RO = > 6 THEN PRINT CHR$ (27); CHR$ (48): REM 8 LPI 5370 IF CO < = 5 THEN PRINT CHR$ (27); CHR$ (80): REM 10 CPI 5380 IF CO = > 6 THEN PRINT CHR$ (27); CHR$ (77): REM 12 CPI 5390 IF CO = > 9 THEN PRINT CHR$ (27); CHR$ (15): REM 17 CPI 5400 GOTO 6000 5410 REM **** IMAGEWRITER I & II PRINTER CODES 5420 IF RO < = 5 THEN PRINT CHR$ (27); CHR$ (65): REM 6 LPI 5430 IF RO = > 6 THEN PRINT CHR$ (27); CHR$ (66): REM 8 LPI 5440 IF CO < = 5 THEN PRINT CHR$ (27); CHR$ (78): REM 10 CPI 5450 IF CO = > 6 THEN PRINT CHR$ (27); CHR$ (69): REM 12 CPI 5460 IF CO = > 9 THEN PRINT CHR$ (27); CHR$ (81): REM 17 CPI 5470 GOTO 6000 5480 REM **** PUT YOUR PRINTER NAME HERE SEE ABOVE EXAMPLE 5490 REM REMOVE THE 1ST REM IN LINES 5500 - 5540 TO MAKE THESE PRINTER CODES WORK THEN ADD THE ASCII PRINTER CODES AS REQUIRED FOR LPI & CPI 5500 REM IF RO < = 5 THEN PRINT CHR$ (); CHR$ (): REM 6 LPI 5510 REM IF RO = > 6 THEN PRINT CHR$ (); CHR$ (): REM 8 LPI 5520 REM IF CO < = 5 THEN PRINT CHR$ (); CHR$ (): REM 10 CPI 5530 REM IF CO = > 6 THEN PRINT CHR$ (); CHR$ (): REM 12 CPI 5540 REM IF CO = > 9 THEN PRINT CHR$ (); CHR$ (): REM 17 CPI 6000 REM *********************** 6010 REM PRINT THE BLOCKS 6020 REM *********************** 6030 FOR C = 1 TO CY: REM # OF COPIES 6040 FOR A = 1 TO RO: REM # OF ROWS OF BLOCKS 6050 FOR B = 1 TO CO: REM TOP OF BLOCKS 6060 PRINT DL$;: REM PRINTS DASHED LINES ON TOP & BOTTOM BLOCKS 6070 PRINT SPC( CS * (B < CO));: REM COLUMNS & SPACES 6080 NEXT B 6090 PRINT : REM CONTROLS LOC OF TOP SIDES 6100 FOR B = 1 TO BH: REM BOX HEIGHT 6110 FOR D = 1 TO CO: REM SIDES OF BLOCKS 6120 PRINT VL$;: REM PRINTS VERTICAL LINES OF BLOCKS 6130 PRINT SPC( CS * (D < CO));: REM COLUMNS & SPACES 6140 NEXT D 6150 PRINT : REM CONTROLS LOC OF BOTTOM SIDES 6160 NEXT B 6170 FOR B = 1 TO CO: REM BOTTOM OF BLOCKS 6180 PRINT DL$;: REM PRINTS DASH LINES ON TOP & BOTTOM BLOCKS 6190 PRINT SPC( CS * (B < CO));: REM COLUMNS & SPACES 6200 NEXT B 6210 FOR B = 1 TO BL: REM BLANK LINES BETWEEN BLOCKS 6220 PRINT : REM CONTROLS LOC BOX TOPS 6230 NEXT B 6240 NEXT A 6250 NEXT C 7000 REM *********************** 7010 REM ITS PLAY TIME 7020 REM *********************** 7030 IF PR = 1 THEN 7110: REM GOTO OKIDATA 92 & 93 PRINTER CODE 7040 IF PR = 2 THEN 7150: REM GOTO STAR PRINTER CODE 7050 IF PR = 3 THEN 7190: REM GOTO STAR MICRO PRINTER CODE 7060 IF PR = 4 THEN 7230: REM GOTO PANASONIC KX-P1124 PRINTER CODE 7070 IF PR = 5 THEN 7270: REM GOTO IMAGEWRITER I & II PRINTER CODE 7080 IF PR = 6 THEN 7150: REM GOTO EPSON LX, LQ PRINTER CODE 7090 IF PR = 7 THEN 7310: REM GOTO YOUR PRINTER CODE 7100 IF PR = 8 THEN 7340: REM GOTO NON ASCII PRINTER CONTROL 7110 REM **** OKIDATA 92 & 93 PRINTER CODE 7120 REM OKIDATA 92 & 93 PRINTER CODE SPARE LINE 7130 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7140 GOTO 7340 7150 REM **** STAR, EPSON LX, LQ PRINTER CODE 7160 REM STAR, EPSON LX, LQ PRINTER CODE SPARE LINE 7170 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7180 GOTO 7340 7190 REM **** STAR MICRO PRINTER CODE 7200 REM STAR PRINTER CODE SPARE LINE 7210 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7220 GOTO 7340 7230 REM **** PANASONIC KX-P1124 PRINTER CODE 7240 REM PANASONIC 1124 PRINTER CODE SPARE LINE 7250 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7260 GOTO 7340 7270 REM **** IMAGEWRITER I & II PRINTER CODE 7280 REM IMAGEWRITER I & II PRINTER CODE SPARE LINE 7290 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7300 GOTO 7340 7310 REM **** PUT YOUR PRINTER CODE IN LINES 7310 - 7330 AND REMOVE THE REMS 7320 REM PUT YOUR PRINTER CODE - HERE SPARE LINE 7330 PRINT CHR$ (12): REM ADVANCES PAPER TO TOP OF NEXT PAGE 7340 PRINT D$;"PR#0": REM TURNS OFF PRINTER INTERFACE 7350 CALL - 936: REM CLEARS SCREEN AND HOMES CURSOR 7360 HTAB 10: VTAB 10: PRINT "PRINT MORE MAPS Y/N? [ ]" 7370 A$ = "N": VTAB 10: HTAB 33: PRINT A$ CHR$ (8);: REM SELF PROMPT 7380 GET A$: PRINT A$ 7390 IF A$ = "Y" OR A$ = "y" THEN 250 7400 IF A$ = "N" OR A$ = "n" OR A$ = CHR$ (13) THEN 7420 7410 IF A$ < > "Y" AND A$ < > "N" THEN 7360 7420 CALL - 936: HTAB 15: VTAB 12: PRINT "BYE BYE": END : REM CLEARS SCREEN, HOMES CURSOR, ENDS PROGRAM 8000 REM *********************** 8010 REM SCREEN STUFF 8020 REM *********************** 8030 CALL - 936 8040 HTAB 4: VTAB 1: PRINT "ROWS ARE PRINTED LEFT - RIGHT" 8050 HTAB 4: VTAB 3: PRINT "COLUMNS ARE PRINTED UP - DOWN": RETURN 8060 HTAB 4: VTAB 6: PRINT "YOU HAVE SELECTED ";CY" COPIES" 8070 HTAB 4: VTAB 8: PRINT "YOU HAVE SELECTED ";RO" ROWS" 8080 HTAB 4: VTAB 10: PRINT "YOU HAVE SELECTED ";CO" COLUMNS" 8090 TB = (RO * CO): REM TOTAL BLOCKS PER PG 8100 HTAB 4: VTAB 12: PRINT "THIS WILL PRINT ";TB" BLOCKS A PAGE" 8110 HTAB 8: VTAB 16: PRINT "IS THIS CORRECT Y/N? [ ]" 8120 A$ = "Y": HTAB 30: VTAB 16: PRINT A$ CHR$ (8);: REM SELF PROMPT 8130 GET A$: PRINT A$ 8140 IF A$ = "Y" OR A$ = "y" OR A$ = CHR$ (13) THEN RETURN 8150 IF A$ = "N" OR A$ = "n" THEN 8170 8160 IF A$ < > "Y" AND A$ < > "N" THEN 8060 8170 HTAB 2: VTAB 20: PRINT "DO YOU WISH TO START OVER Y/N? [ ]" 8180 A$ = "Y": HTAB 34: VTAB 20: PRINT A$ CHR$ (8);: REM SELF PROMPT 8190 GET A$: PRINT A$ 8200 IF A$ = "Y" OR A$ = "y" OR A$ = CHR$ (13) THEN 210 8210 IF A$ = "N" OR A$ = "n" THEN 2250 8220 IF A$ < > "Y" AND A$ < > "N" THEN 8170