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