_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

GRAPHIC ROUTINES

FILE INFORMATION

FILENAME(S): GRAPHIC ROUTINES

FILE TYPE(S): PRG

FILE SIZE: 5.5K

FIRST SEEN: 2025-11-30 21:24:08

APPEARS ON: 1 disk(s)

FILE HASH

b9593fba136967d872d50955d1eae6349ae3ce52fb890ba0984037c8d51d0e53

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
BEST OF TORPET GRAPHIC ROUTINES PRG DuncanTwain 16 4 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)

00000000: 01 08 21 08 00 00 8F 20  2A 2A 2A 43 48 41 4E 47  |..!.... ***CHANG|
00000010: 45 20 53 43 52 45 45 4E  20 43 4F 4C 4F 52 2A 2A  |E SCREEN COLOR**|
00000020: 2A 00 41 08 01 00 8F 20  2A 2A 2A 50 52 49 4E 54  |*.A.... ***PRINT|
00000030: 20 57 41 49 54 20 4D 45  53 53 41 47 45 20 2A 2A  | WAIT MESSAGE **|
00000040: 2A 00 5A 08 02 00 97 20  35 33 32 38 30 2C 31 31  |*.Z.... 53280,11|
00000050: 3A 97 20 35 33 32 38 31  2C 30 00 90 08 04 00 99  |:. 53281,0......|
00000060: 22 98 93 1D 1D 1D 1D 1D  1D 1D 11 11 11 11 11 11  |"...............|
00000070: 11 11 43 4C 45 41 52 49  4E 47 20 48 49 47 48 20  |..CLEARING HIGH |
00000080: 52 45 53 20 53 43 52 45  45 4E 20 2E 20 2E 20 22  |RES SCREEN . . "|
00000090: 00 B8 08 06 00 99 22 11  11 1D 1D 1D 1D 1D 1D 1D  |......".........|
000000A0: 1D 50 4C 45 41 53 45 20  57 41 49 54 20 33 35 20  |.PLEASE WAIT 35 |
000000B0: 53 45 43 4F 4E 44 53 22  00 F2 08 07 00 99 22 11  |SECONDS"......".|
000000C0: 11 11 11 11 11 11 11 11  11 11 1D 12 DA D8 20 43  |.............. C|
000000D0: 4F 4D 4D 4F 44 4F 52 45  2D 36 34 20 48 49 2D 52  |OMMODORE-64 HI-R|
000000E0: 45 53 4F 4C 55 54 49 4F  4E 20 44 45 4D 4F 20 C1  |ESOLUTION DEMO .|
000000F0: D3 22 00 14 09 08 00 8F  20 2A 2A 2A 20 43 4C 45  |."...... *** CLE|
00000100: 41 52 20 48 49 2D 52 45  53 20 53 43 52 45 45 4E  |AR HI-RES SCREEN|
00000110: 20 2A 2A 2A 00 31 09 0A  00 81 20 49 B2 38 31 39  | ***.1.... I.819|
00000120: 32 20 A4 20 31 36 31 39  32 3A 97 20 49 2C 30 3A  |2 . 16192:. I,0:|
00000130: 82 00 58 09 0D 00 8F 20  2A 2A 2A 20 53 45 54 20  |..X.... *** SET |
00000140: 55 50 20 50 4F 57 45 52  53 20 4F 46 20 32 20 54  |UP POWERS OF 2 T|
00000150: 41 42 4C 45 20 2A 2A 2A  00 7F 09 0E 00 8F 20 2A  |ABLE ***...... *|
00000160: 2A 2A 20 20 20 20 46 4F  52 20 52 4F 55 54 49 4E  |**    FOR ROUTIN|
00000170: 45 53 20 34 20 26 20 35  20 20 20 20 2A 2A 2A 00  |ES 4 & 5    ***.|
00000180: AB 09 10 00 81 20 49 B2  30 20 A4 20 37 3A 50 28  |..... I.0 . 7:P(|
00000190: 49 29 B2 32 AE 28 37 AB  49 29 3A 50 31 28 49 29  |I).2.(7.I):P1(I)|
000001A0: B2 32 35 35 AB 50 28 49  29 3A 82 00 D3 09 11 00  |.255.P(I):......|
000001B0: 8F 20 2A 2A 2A 20 20 20  53 54 41 52 54 20 48 49  |. ***   START HI|
000001C0: 2D 52 45 53 20 4D 4F 44  45 20 41 4E 44 20 20 20  |-RES MODE AND   |
000001D0: 2A 2A 2A 00 FB 09 12 00  8F 20 2A 2A 2A 20 53 45  |***...... *** SE|
000001E0: 54 20 48 49 2D 52 45 53  20 53 43 52 45 45 4E 20  |T HI-RES SCREEN |
000001F0: 41 54 20 38 31 39 32 20  2A 2A 2A 00 2B 0A 14 00  |AT 8192 ***.+...|
00000200: 99 22 93 22 3A 97 20 35  33 32 36 35 2C C2 28 35  |.".":. 53265,.(5|
00000210: 33 32 36 35 29 B0 33 32  3A 97 20 35 33 32 37 32  |3265).32:. 53272|
00000220: 2C C2 28 35 33 32 37 32  29 B0 38 00 51 0A 19 00  |,.(53272).8.Q...|
00000230: 8F 20 2A 2A 2A 20 20 20  20 53 45 54 20 48 49 2D  |. ***    SET HI-|
00000240: 52 45 53 20 43 4F 4C 4F  52 53 20 20 20 20 2A 2A  |RES COLORS    **|
00000250: 2A 00 77 0A 1A 00 8F 20  2A 2A 2A 55 50 50 45 52  |*.w.... ***UPPER|
00000260: 20 4E 59 42 42 4C 45 20  46 4F 52 20 22 31 22 20  | NYBBLE FOR "1" |
00000270: 42 49 54 53 2A 2A 2A 00  9D 0A 1B 00 8F 20 2A 2A  |BITS***...... **|
00000280: 2A 4C 4F 57 45 52 20 4E  59 42 42 4C 45 20 46 4F  |*LOWER NYBBLE FO|
00000290: 52 20 22 30 22 20 42 49  54 53 2A 2A 2A 00 BB 0A  |R "0" BITS***...|
000002A0: 1E 00 81 20 49 B2 31 30  32 34 20 A4 20 32 30 32  |... I.1024 . 202|
000002B0: 33 3A 97 20 49 2C 31 39  32 3A 82 00 DB 0A 64 00  |3:. I,192:....d.|
000002C0: 8F 20 2A 2A 2A 50 52 49  4E 54 20 53 54 52 49 4E  |. ***PRINT STRIN|
000002D0: 47 53 20 55 53 49 4E 47  2A 2A 2A 00 FB 0A 65 00  |GS USING***...e.|
000002E0: 8F 20 2A 2A 2A 20 20 20  20 20 52 4F 55 54 49 4E  |. ***     ROUTIN|
000002F0: 45 20 31 20 20 20 20 20  2A 2A 2A 00 33 0B 66 00  |E 1     ***.3.f.|
00000300: 4C B2 30 3A 52 B2 30 3A  58 B2 30 3A 59 B2 31 33  |L.0:R.0:X.0:Y.13|
00000310: 3A 42 31 B2 35 33 32 34  38 3A 4F B2 31 3A 42 24  |:B1.53248:O.1:B$|
00000320: B2 22 2D 32 FF 9D 9D 91  9D C7 22 3A 8D 20 31 30  |."-2......":. 10|
00000330: 30 30 30 00 50 0B 67 00  58 B2 32 30 3A 59 B2 31  |000.P.g.X.20:Y.1|
00000340: 33 3A 42 24 B2 22 30 22  3A 8D 20 31 30 30 30 30  |3:B$."0":. 10000|
00000350: 00 77 0B 68 00 58 B2 33  37 3A 59 B2 31 33 3A 42  |.w.h.X.37:Y.13:B|
00000360: 24 B2 22 91 1D 1D D9 9D  9D 9D 11 2B 32 FF 22 3A  |$."........+2.":|
00000370: 8D 20 31 30 30 30 30 00  95 0B 69 00 58 B2 31 39  |. 10000...i.X.19|
00000380: 3A 59 B2 33 3A 42 24 B2  22 C6 2B 31 22 3A 8D 20  |:Y.3:B$.".+1":. |
00000390: 31 30 30 30 30 00 B4 0B  6A 00 58 B2 31 39 3A 59  |10000...j.X.19:Y|
000003A0: B2 32 31 3A 42 24 B2 22  C4 2D 31 22 3A 8D 20 31  |.21:B$.".-1":. 1|
000003B0: 30 30 30 30 00 FA 0B 6B  00 52 B2 31 3A 58 B2 31  |0000...k.R.1:X.1|
000003C0: 3A 59 B2 32 33 3A 42 24  B2 22 DA D8 20 43 0E 4F  |:Y.23:B$.".. C.O|
000003D0: 4D 4D 4F 44 4F 52 45 2D  36 34 20 C8 49 2D D2 45  |MMODORE-64 .I-.E|
000003E0: 53 4F 4C 55 54 49 4F 4E  20 C4 45 4D 4F 20 8E C1  |SOLUTION .EMO ..|
000003F0: D3 22 3A 8D 20 31 30 30  30 30 00 19 0C 6C 00 8F  |.":. 10000...l..|
00000400: 20 2A 2A 2A 20 50 52 49  4E 54 20 41 58 49 53 20  | *** PRINT AXIS |
00000410: 55 53 49 4E 47 20 2A 2A  2A 00 38 0C 6D 00 8F 20  |USING ***.8.m.. |
00000420: 2A 2A 2A 20 20 20 20 52  4F 55 54 49 4E 45 20 33  |***    ROUTINE 3|
00000430: 20 20 20 20 20 2A 2A 2A  00 5E 0C 6E 00 58 31 B2  |     ***.^.n.X1.|
00000440: 30 3A 59 31 B2 31 30 30  3A 58 32 B2 33 31 39 3A  |0:Y1.100:X2.319:|
00000450: 59 32 B2 31 30 30 3A 8D  20 33 30 30 30 30 00 7D  |Y2.100:. 30000.}|
00000460: 0C 71 00 8F 20 2A 2A 2A  20 50 52 49 4E 54 20 41  |.q.. *** PRINT A|
00000470: 58 49 53 20 55 53 49 4E  47 20 2A 2A 2A 00 9C 0C  |XIS USING ***...|
00000480: 72 00 8F 20 2A 2A 2A 20  20 20 20 52 4F 55 54 49  |r.. ***    ROUTI|
00000490: 4E 45 20 34 20 20 20 20  20 2A 2A 2A 00 C9 0C 73  |NE 4     ***...s|
000004A0: 00 81 20 59 B2 32 35 20  A4 20 31 37 34 3A 58 B2  |.. Y.25 . 174:X.|
000004B0: 31 35 38 3A 8D 20 31 30  30 30 3A 58 B2 31 35 37  |158:. 1000:X.157|
000004C0: 3A 8D 20 31 30 30 30 3A  82 00 EB 0C 74 00 8F 20  |:. 1000:....t.. |
000004D0: 2A 2A 2A 20 47 45 54 20  55 53 45 52 20 49 4E 50  |*** GET USER INP|
000004E0: 55 54 20 57 49 54 48 20  2A 2A 2A 00 0D 0D 75 00  |UT WITH ***...u.|
000004F0: 8F 20 2A 2A 2A 20 20 20  20 20 20 52 4F 55 54 49  |. ***      ROUTI|
00000500: 4E 45 20 32 20 20 20 20  20 20 2A 2A 2A 00 47 0D  |NE 2      ***.G.|
00000510: 78 00 42 4C B2 31 3A 58  B2 30 3A 59 B2 30 3A 52  |x.BL.1:X.0:Y.0:R|
00000520: B2 30 3A 42 24 B2 22 49  4E 50 55 54 20 50 45 52  |.0:B$."INPUT PER|
00000530: 49 4F 44 20 3F 20 22 3A  8D 20 32 30 30 30 30 3A  |IOD ? ":. 20000:|
00000540: 4A B2 C5 28 49 24 29 00  65 0D 7D 00 8F 20 2A 2A  |J..(I$).e.}.. **|
00000550: 2A 20 50 4C 4F 54 20 53  49 4E 45 20 43 55 52 56  |* PLOT SINE CURV|
00000560: 45 20 2A 2A 2A 00 83 0D  7E 00 8F 20 2A 2A 2A 20  |E ***...~.. *** |
00000570: 55 53 49 4E 47 20 52 4F  55 54 49 4E 45 20 34 20  |USING ROUTINE 4 |
00000580: 2A 2A 2A 00 C0 0D 82 00  81 20 58 B2 30 20 A4 20  |***...... X.0 . |
00000590: 33 31 39 3A 5A B2 BF 28  28 58 AB 31 35 38 29 AD  |319:Z..((X.158).|
000005A0: 32 35 AC 4A 29 3A 59 B2  B5 28 31 30 30 AB 37 30  |25.J):Y..(100.70|
000005B0: AC 5A AC 5A AC 5A 29 3A  8D 20 31 30 30 30 3A 82  |.Z.Z.Z):. 1000:.|
000005C0: 00 E4 0D 83 00 8F 20 2A  2A 2A 20 4C 41 42 45 4C  |...... *** LABEL|
000005D0: 20 50 4C 4F 54 20 57 49  54 48 20 49 4E 50 55 54  | PLOT WITH INPUT|
000005E0: 20 2A 2A 2A 00 08 0E 84  00 8F 20 2A 2A 2A 20 20  | ***...... ***  |
000005F0: 20 20 55 53 49 4E 47 20  52 4F 55 54 49 4E 45 20  |  USING ROUTINE |
00000600: 31 20 20 20 20 2A 2A 2A  00 35 0E 85 00 4C B2 31  |1    ***.5...L.1|
00000610: 3A 52 B2 30 3A 58 B2 34  3A 59 B2 31 3A 42 24 B2  |:R.0:X.4:Y.1:B$.|
00000620: 22 59 3D 8E 53 0E 49 4E  91 33 11 28 22 3A 8D 20  |"Y=.S.IN.3.(":. |
00000630: 31 30 30 30 30 00 58 0E  86 00 42 24 B2 49 24 3A  |10000.X...B$.I$:|
00000640: 8D 20 31 30 30 30 30 3A  42 24 B2 22 2A 58 29 22  |. 10000:B$."*X)"|
00000650: 3A 8D 20 31 30 30 30 30  00 7C 0E 89 00 8F 20 2A  |:. 10000.|.... *|
00000660: 2A 2A 20 50 41 55 53 45  20 4C 4F 4F 50 3A 20 57  |** PAUSE LOOP: W|
00000670: 48 45 4E 20 22 41 22 20  20 2A 2A 2A 00 A0 0E 8A  |HEN "A"  ***....|
00000680: 00 8F 20 2A 2A 2A 20 49  53 20 52 45 43 45 49 56  |.. *** IS RECEIV|
00000690: 45 44 20 47 4F 20 42 41  43 4B 20 20 20 2A 2A 2A  |ED GO BACK   ***|
000006A0: 00 C4 0E 8B 00 8F 20 2A  2A 2A 20 20 20 54 4F 20  |...... ***   TO |
000006B0: 53 54 41 4E 44 41 52 44  20 4D 4F 44 45 20 20 20  |STANDARD MODE   |
000006C0: 20 2A 2A 2A 00 E8 0E 8C  00 8F 20 2A 2A 2A 20 20  | ***...... ***  |
000006D0: 20 20 20 20 41 4E 44 20  53 54 4F 50 20 20 20 20  |    AND STOP    |
000006E0: 20 20 20 20 20 2A 2A 2A  00 FF 0E 91 00 A1 20 41  |     ***...... A|
000006F0: 24 3A 8B 20 41 24 B2 22  22 20 A7 20 31 34 35 00  |$:. A$."" . 145.|
00000700: 34 0F 96 00 97 20 35 33  32 36 35 2C C2 28 35 33  |4.... 53265,.(53|
00000710: 32 36 35 29 AF 32 32 33  3A 99 22 93 22 3B 3A 97  |265).223:.".";:.|
00000720: 20 35 33 32 37 32 2C C2  28 35 33 32 37 32 29 AF  | 53272,.(53272).|
00000730: 32 31 3A 80 00 3A 0F D6  03 3A 00 40 0F D8 03 3A  |21:..:...:.@...:|
00000740: 00 64 0F DE 03 8F 20 2A  2A 2A 20 20 20 20 20 52  |.d.... ***     R|
00000750: 4F 55 54 49 4E 45 53 20  34 20 26 20 35 20 20 20  |OUTINES 4 & 5   |
00000760: 20 2A 2A 2A 00 88 0F E0  03 8F 20 2A 2A 2A 20 20  | ***...... ***  |
00000770: 20 20 46 4F 52 20 50 4C  4F 54 54 49 4E 47 20 41  |  FOR PLOTTING A|
00000780: 4E 44 20 20 20 2A 2A 2A  00 AC 0F E2 03 8F 20 2A  |ND   ***...... *|
00000790: 2A 2A 20 20 20 55 4E 50  4C 4F 54 54 49 4E 47 20  |**   UNPLOTTING |
000007A0: 50 4F 49 4E 54 53 20 20  20 2A 2A 2A 00 D0 0F E4  |POINTS   ***....|
000007B0: 03 8F 20 2A 2A 2A 20 53  45 45 20 52 45 46 2E 20  |.. *** SEE REF. |
000007C0: 47 55 49 44 45 20 50 47  20 31 32 35 20 2A 2A 2A  |GUIDE PG 125 ***|
000007D0: 00 D6 0F E5 03 3A 00 0D  10 E8 03 42 B2 B5 28 59  |.....:.....B..(Y|
000007E0: AD 38 29 AC 33 32 30 AA  B5 28 58 AD 38 29 AC 38  |.8).320..(X.8).8|
000007F0: AA 28 59 AF 37 29 AA 38  31 39 32 3A 97 20 42 2C  |.(Y.7).8192:. B,|
00000800: C2 28 42 29 B0 50 28 58  AF 37 29 3A 8E 00 45 10  |.(B).P(X.7):..E.|
00000810: E9 03 42 B2 B5 28 59 AD  38 29 AC 33 32 30 AA B5  |..B..(Y.8).320..|
00000820: 28 58 AD 38 29 AC 38 AA  28 59 AF 37 29 AA 38 31  |(X.8).8.(Y.7).81|
00000830: 39 32 3A 97 20 42 2C C2  28 42 29 AF 50 31 28 58  |92:. B,.(B).P1(X|
00000840: AF 37 29 3A 8E 00 4B 10  FC 26 3A 00 51 10 FE 26  |.7):..K..&:.Q..&|
00000850: 3A 00 77 10 06 27 8F 20  2A 2A 2A 20 52 4F 55 54  |:.w..'. *** ROUT|
00000860: 49 4E 45 20 31 3A 20 46  4F 52 20 50 52 49 4E 54  |INE 1: FOR PRINT|
00000870: 49 4E 47 20 2A 2A 2A 00  9D 10 08 27 8F 20 2A 2A  |ING ***....'. **|
00000880: 2A 20 20 20 53 54 52 49  4E 47 53 20 49 4E 20 48  |*   STRINGS IN H|
00000890: 49 2D 20 52 45 53 20 20  20 20 2A 2A 2A 00 A3 10  |I- RES    ***...|
000008A0: 09 27 3A 00 C6 10 0A 27  8F 20 2A 2A 2A 20 44 49  |.':....'. *** DI|
000008B0: 53 41 42 4C 45 20 49 4E  54 45 52 52 55 50 54 53  |SABLE INTERRUPTS|
000008C0: 20 26 20 2A 2A 2A 00 E9  10 0C 27 8F 20 2A 2A 2A  | & ***....'. ***|
000008D0: 20 20 53 57 49 54 43 48  20 49 4E 20 43 48 41 52  |  SWITCH IN CHAR|
000008E0: 20 52 4F 4D 20 20 2A 2A  2A 00 0C 11 0E 27 8F 20  | ROM  ***....'. |
000008F0: 2A 2A 2A 20 43 41 4C 43  55 4C 41 54 45 20 43 48  |*** CALCULATE CH|
00000900: 41 52 20 42 41 53 45 20  20 2A 2A 2A 00 46 11 10  |AR BASE  ***.F..|
00000910: 27 97 20 35 36 33 33 34  2C C2 28 35 36 33 33 34  |'. 56334,.(56334|
00000920: 29 AF 32 35 34 3A 97 20  31 2C C2 28 31 29 AF 32  |).254:. 1,.(1).2|
00000930: 35 31 3A 42 32 B2 42 31  AA 52 AC 31 30 32 34 AA  |51:B2.B1.R.1024.|
00000940: 4C AC 32 30 34 38 00 66  11 1A 27 8F 20 2A 2A 2A  |L.2048.f..'. ***|
00000950: 20 20 47 45 54 20 41 20  43 48 41 52 41 43 54 45  |  GET A CHARACTE|
00000960: 52 20 20 2A 2A 2A 00 86  11 1C 27 8F 20 2A 2A 2A  |R  ***....'. ***|
00000970: 20 46 52 4F 4D 20 49 4E  50 55 54 20 53 54 52 49  | FROM INPUT STRI|
00000980: 4E 47 20 2A 2A 2A 00 A7  11 24 27 81 20 49 B2 31  |NG ***...$'. I.1|
00000990: 20 A4 20 C3 28 42 24 29  3A 43 B2 C6 28 CA 28 42  | . .(B$):C..(.(B|
000009A0: 24 2C 49 2C 31 29 29 00  C8 11 2A 27 8F 20 2A 2A  |$,I,1))...*'. **|
000009B0: 2A 20 53 50 45 43 49 41  4C 20 43 48 41 52 41 43  |* SPECIAL CHARAC|
000009C0: 54 45 52 53 20 2A 2A 2A  00 E9 11 2C 27 8F 20 2A  |TERS ***...,'. *|
000009D0: 2A 2A 20 20 44 45 43 4F  44 49 4E 47 20 53 45 43  |**  DECODING SEC|
000009E0: 54 49 4F 4E 20 20 2A 2A  2A 00 13 12 2E 27 8B 20  |TION  ***....'. |
000009F0: 43 B2 31 34 35 20 A7 20  59 B2 59 AB 31 3A 82 3A  |C.145 . Y.Y.1:.:|
00000A00: 8E 3A 8F 20 2A 2A 20 43  55 52 53 4F 52 20 55 50  |.:. ** CURSOR UP|
00000A10: 20 2A 2A 00 3E 12 38 27  8B 20 43 B2 31 37 20 A7  | **.>.8'. C.17 .|
00000A20: 20 59 B2 59 AA 31 3A 82  3A 8E 3A 8F 20 2A 2A 20  | Y.Y.1:.:.:. ** |
00000A30: 43 55 52 53 4F 52 20 44  4F 57 4E 20 2A 2A 00 6A  |CURSOR DOWN **.j|
00000A40: 12 42 27 8B 20 43 B2 32  39 20 A7 20 58 B2 58 AA  |.B'. C.29 . X.X.|
00000A50: 31 3A 82 3A 8E 3A 8F 20  2A 2A 20 43 55 52 53 4F  |1:.:.:. ** CURSO|
00000A60: 52 20 52 49 47 48 54 20  2A 2A 00 96 12 4C 27 8B  |R RIGHT **...L'.|
00000A70: 20 43 B2 31 35 37 20 A7  20 58 B2 58 AB 31 3A 82  | C.157 . X.X.1:.|
00000A80: 3A 8E 3A 8F 20 2A 2A 20  43 55 52 53 4F 52 20 4C  |:.:. ** CURSOR L|
00000A90: 45 46 54 20 2A 2A 00 D0  12 56 27 8B 20 43 B2 31  |EFT **...V'. C.1|
00000AA0: 38 20 A7 20 52 B2 31 3A  42 32 B2 42 31 AA 31 30  |8 . R.1:B2.B1.10|
00000AB0: 32 34 AA 4C AC 32 30 34  38 3A 82 3A 8E 3A 8F 20  |24.L.2048:.:.:. |
00000AC0: 2A 2A 20 52 45 56 45 52  53 45 20 4F 4E 20 2A 2A  |** REVERSE ON **|
00000AD0: 00 07 13 60 27 8B 20 43  B2 31 34 36 20 A7 20 52  |...`'. C.146 . R|
00000AE0: B2 30 3A 42 32 B2 42 31  AA 4C AC 32 30 34 38 3A  |.0:B2.B1.L.2048:|
00000AF0: 82 3A 8E 3A 8F 20 2A 2A  20 52 45 56 45 52 53 45  |.:.:. ** REVERSE|
00000B00: 20 4F 46 46 20 2A 2A 00  34 13 6A 27 8B 20 43 B2  | OFF **.4.j'. C.|
00000B10: 31 39 20 A7 20 58 B2 30  3A 59 B2 30 3A 82 3A 8E  |19 . X.0:Y.0:.:.|
00000B20: 3A 8F 20 2A 2A 20 43 55  52 53 4F 52 20 48 4F 4D  |:. ** CURSOR HOM|
00000B30: 45 20 2A 2A 00 74 13 74  27 8B 20 43 B2 31 34 20  |E **.t.t'. C.14 |
00000B40: A7 20 4C B2 31 3A 42 32  B2 42 31 AA 52 AC 31 30  |. L.1:B2.B1.R.10|
00000B50: 32 34 AA 32 30 34 38 3A  82 3A 8E 3A 8F 20 2A 2A  |24.2048:.:.:. **|
00000B60: 20 53 54 41 52 54 20 4C  4F 57 45 52 20 43 41 53  | START LOWER CAS|
00000B70: 45 20 2A 2A 00 AF 13 88  27 8B 20 43 B2 31 34 32  |E **....'. C.142|
00000B80: 20 A7 20 4C B2 30 3A 42  32 B2 42 31 AA 52 AC 31  | . L.0:B2.B1.R.1|
00000B90: 30 32 34 3A 82 3A 8E 3A  8F 20 2A 2A 20 53 54 4F  |024:.:.:. ** STO|
00000BA0: 50 20 4C 4F 57 45 52 20  43 41 53 45 20 2A 2A 00  |P LOWER CASE **.|
00000BB0: DF 13 92 27 8B 20 43 B2  32 35 35 20 A7 20 43 B2  |...'. C.255 . C.|
00000BC0: 31 32 36 3A 8F 20 2A 2A  20 22 FF 22 20 49 53 20  |126:. ** "." IS |
00000BD0: 53 50 45 43 49 41 4C 20  43 41 53 45 20 2A 2A 00  |SPECIAL CASE **.|
00000BE0: 04 14 94 27 8F 20 2A 2A  2A 20 20 54 52 41 4E 53  |...'. ***  TRANS|
00000BF0: 4C 41 54 45 20 43 48 52  24 20 43 4F 44 45 53 20  |LATE CHR$ CODES |
00000C00: 20 2A 2A 2A 00 29 14 96  27 8F 20 2A 2A 2A 20 54  | ***.)..'. *** T|
00000C10: 4F 20 53 43 52 45 45 4E  20 43 4F 44 45 53 3A 20  |O SCREEN CODES: |
00000C20: 43 48 41 52 53 20 2A 2A  2A 00 4E 14 98 27 8F 20  |CHARS ***.N..'. |
00000C30: 2A 2A 2A 20 50 41 54 54  45 52 4E 53 20 49 4E 20  |*** PATTERNS IN |
00000C40: 52 4F 4D 20 53 54 4F 52  45 44 20 2A 2A 2A 00 73  |ROM STORED ***.s|
00000C50: 14 9A 27 8F 20 2A 2A 2A  20 20 20 20 42 59 20 53  |..'. ***    BY S|
00000C60: 43 52 45 45 4E 20 43 4F  44 45 20 20 20 20 20 20  |CREEN CODE      |
00000C70: 2A 2A 2A 00 B2 14 9C 27  91 20 43 AD 33 32 AA 31  |***....'. C.32.1|
00000C80: 20 89 20 31 30 31 35 30  2C 31 30 32 30 30 2C 31  | . 10150,10200,1|
00000C90: 30 31 37 30 2C 31 30 31  36 30 2C 31 30 31 35 30  |0170,10160,10150|
00000CA0: 2C 31 30 31 37 30 2C 31  30 31 39 30 2C 31 30 31  |,10170,10190,101|
00000CB0: 37 30 00 C3 14 A6 27 43  B2 33 32 3A 89 20 31 30  |70....'C.32:. 10|
00000CC0: 32 30 30 00 D6 14 B0 27  43 B2 43 AB 33 32 3A 89  |200....'C.C.32:.|
00000CD0: 20 31 30 32 30 30 00 E9  14 BA 27 43 B2 43 AB 36  | 10200....'C.C.6|
00000CE0: 34 3A 89 20 31 30 32 30  30 00 FC 14 C4 27 43 B2  |4:. 10200....'C.|
00000CF0: 43 AB 39 36 3A 89 20 31  30 32 30 30 00 08 15 CE  |C.96:. 10200....|
00000D00: 27 43 B2 43 AB 31 32 38  00 2D 15 D0 27 8F 20 2A  |'C.C.128.-..'. *|
00000D10: 2A 2A 20 43 41 4C 43 55  4C 41 54 45 20 53 54 41  |** CALCULATE STA|
00000D20: 52 54 49 4E 47 20 50 4F  53 20 2A 2A 2A 00 52 15  |RTING POS ***.R.|
00000D30: D2 27 8F 20 2A 2A 2A 20  20 20 46 4F 52 20 53 54  |.'. ***   FOR ST|
00000D40: 52 49 4E 47 20 41 4E 44  20 43 48 41 52 20 20 2A  |RING AND CHAR  *|
00000D50: 2A 2A 00 77 15 D4 27 8F  20 2A 2A 2A 20 20 20 20  |**.w..'. ***    |
00000D60: 20 20 20 44 45 46 49 4E  49 54 49 4F 4E 20 20 20  |   DEFINITION   |
00000D70: 20 20 20 20 2A 2A 2A 00  95 15 D8 27 5A B2 59 AC  |    ***....'Z.Y.|
00000D80: 33 32 30 AA 58 AC 38 AA  38 31 39 32 3A 43 B2 43  |320.X.8.8192:C.C|
00000D90: AC 38 AA 42 32 00 B8 15  EC 27 8F 20 2A 2A 2A 20  |.8.B2....'. *** |
00000DA0: 50 4F 4B 45 20 44 45 46  49 4E 49 54 49 4F 4E 20  |POKE DEFINITION |
00000DB0: 49 4E 54 4F 20 2A 2A 2A  00 DB 15 EE 27 8F 20 2A  |INTO ***....'. *|
00000DC0: 2A 2A 20 20 20 48 49 2D  52 45 53 20 4C 4F 43 41  |**   HI-RES LOCA|
00000DD0: 54 49 4F 4E 20 20 20 20  2A 2A 2A 00 0B 16 00 28  |TION    ***....(|
00000DE0: 81 20 4A B2 30 20 A4 20  37 3A 97 20 5A AA 4A 2C  |. J.0 . 7:. Z.J,|
00000DF0: 28 4F AC C2 28 5A AA 4A  29 29 B0 C2 28 43 AA 4A  |(O..(Z.J))..(C.J|
00000E00: 29 3A 82 3A 58 B2 58 AA  31 3A 82 00 2E 16 14 28  |):.:X.X.1:.....(|
00000E10: 8F 20 2A 2A 2A 20 52 45  2D 45 4E 41 42 4C 45 20  |. *** RE-ENABLE |
00000E20: 49 4E 54 45 52 52 55 50  54 53 20 2A 2A 2A 00 51  |INTERRUPTS ***.Q|
00000E30: 16 16 28 8F 20 2A 2A 2A  20 20 41 4E 44 20 53 57  |..(. ***  AND SW|
00000E40: 49 54 43 48 20 4F 55 54  20 52 4F 4D 20 20 2A 2A  |ITCH OUT ROM  **|
00000E50: 2A 00 75 16 32 28 97 20  31 2C C2 28 31 29 B0 34  |*.u.2(. 1,.(1).4|
00000E60: 3A 97 20 35 36 33 33 34  2C C2 28 35 36 33 33 34  |:. 56334,.(56334|
00000E70: 29 B0 31 3A 8E 00 7B 16  A8 4D 3A 00 81 16 AA 4D  |).1:..{..M:....M|
00000E80: 3A 00 A7 16 BC 4D 8F 20  2A 2A 2A 20 52 4F 55 54  |:....M. *** ROUT|
00000E90: 49 4E 45 20 32 2D 55 53  45 52 20 49 4E 50 55 54  |INE 2-USER INPUT|
00000EA0: 20 20 20 20 2A 2A 2A 00  AD 16 BD 4D 3A 00 D3 16  |    ***....M:...|
00000EB0: BE 4D 8F 20 2A 2A 2A 20  49 4E 49 54 49 41 4C 49  |.M. *** INITIALI|
00000EC0: 5A 45 20 49 4E 50 55 54  20 53 54 52 49 4E 47 20  |ZE INPUT STRING |
00000ED0: 2A 2A 2A 00 F9 16 C0 4D  8F 20 2A 2A 2A 20 53 41  |***....M. *** SA|
00000EE0: 56 45 20 53 54 41 52 54  20 50 4F 53 49 54 49 4F  |VE START POSITIO|
00000EF0: 4E 20 41 4E 44 20 2A 2A  2A 00 1F 17 C2 4D 8F 20  |N AND ***....M. |
00000F00: 2A 2A 2A 20 20 20 20 4C  45 4E 47 54 48 20 4F 46  |***    LENGTH OF|
00000F10: 20 50 52 4F 4D 50 54 20  20 20 20 20 2A 2A 2A 00  | PROMPT     ***.|
00000F20: 44 17 20 4E 49 24 B2 22  22 3A 48 58 B2 58 3A 48  |D. NI$."":HX.X:H|
00000F30: 59 B2 59 3A 48 42 B2 C3  28 42 24 29 3A 8D 20 31  |Y.Y:HB..(B$):. 1|
00000F40: 30 30 30 30 00 5D 17 28  4E 8F 20 2A 2A 2A 20 47  |0000.].(N. *** G|
00000F50: 45 54 20 41 20 43 48 41  52 20 2A 2A 2A 00 76 17  |ET A CHAR ***.v.|
00000F60: 2A 4E A1 20 42 24 3A 8B  20 42 24 B2 22 22 20 A7  |*N. B$:. B$."" .|
00000F70: 20 32 30 30 31 30 00 9C  17 2E 4E 8F 20 2A 2A 2A  | 20010....N. ***|
00000F80: 20 43 48 45 43 4B 20 46  4F 52 20 53 50 45 43 49  | CHECK FOR SPECI|
00000F90: 41 4C 20 43 48 41 52 53  20 2A 2A 2A 00 C2 17 30  |AL CHARS ***...0|
00000FA0: 4E 8F 20 2A 2A 2A 20 20  20 20 4F 4E 4C 59 20 46  |N. ***    ONLY F|
00000FB0: 49 52 53 54 20 54 57 4F  20 41 52 45 20 20 20 2A  |IRST TWO ARE   *|
00000FC0: 2A 2A 00 E8 17 32 4E 8F  20 2A 2A 2A 44 49 46 46  |**...2N. ***DIFF|
00000FD0: 45 52 45 4E 54 20 46 52  4F 4D 20 52 4F 55 54 49  |ERENT FROM ROUTI|
00000FE0: 4E 45 20 31 20 2A 2A 2A  00 10 18 34 4E 8B 20 42  |NE 1 ***...4N. B|
00000FF0: 24 B2 C7 28 31 33 29 20  A7 20 32 30 30 37 30 3A  |$..(13) . 20070:|
00001000: 8F 20 2A 2A 2A 20 52 45  54 55 52 4E 20 2A 2A 2A  |. *** RETURN ***|
00001010: 00 38 18 3E 4E 8B 20 42  24 B2 C7 28 32 30 29 20  |.8.>N. B$..(20) |
00001020: A7 20 32 30 30 34 35 3A  8F 20 2A 2A 2A 20 44 45  |. 20045:. *** DE|
00001030: 4C 45 54 45 20 2A 2A 2A  00 50 18 3F 4E 8B 20 42  |LETE ***.P.?N. B|
00001040: 24 B2 C7 28 31 34 35 29  20 A7 20 32 30 30 34 31  |$..(145) . 20041|
00001050: 00 67 18 40 4E 8B 20 42  24 B2 C7 28 31 37 29 20  |.g.@N. B$..(17) |
00001060: A7 20 32 30 30 34 31 00  7E 18 41 4E 8B 20 42 24  |. 20041.~.AN. B$|
00001070: B2 C7 28 32 39 29 20 A7  20 32 30 30 34 31 00 96  |..(29) . 20041..|
00001080: 18 42 4E 8B 20 42 24 B2  C7 28 31 35 37 29 20 A7  |.BN. B$..(157) .|
00001090: 20 32 30 30 34 31 00 AD  18 43 4E 8B 20 42 24 B2  | 20041...CN. B$.|
000010A0: C7 28 31 38 29 20 A7 20  32 30 30 34 31 00 C5 18  |.(18) . 20041...|
000010B0: 44 4E 8B 20 42 24 B2 C7  28 31 34 36 29 20 A7 20  |DN. B$..(146) . |
000010C0: 32 30 30 34 31 00 DC 18  45 4E 8B 20 42 24 B2 C7  |20041...EN. B$..|
000010D0: 28 31 39 29 20 A7 20 32  30 30 34 31 00 F3 18 46  |(19) . 20041...F|
000010E0: 4E 8B 20 42 24 B2 C7 28  31 34 29 20 A7 20 32 30  |N. B$..(14) . 20|
000010F0: 30 34 31 00 0B 19 47 4E  8B 20 42 24 B2 C7 28 31  |041...GN. B$..(1|
00001100: 34 32 29 20 A7 20 32 30  30 34 31 00 28 19 48 4E  |42) . 20041.(.HN|
00001110: 8F 20 2A 2A 2A 20 45 43  48 4F 20 43 48 41 52 41  |. *** ECHO CHARA|
00001120: 43 54 45 52 20 2A 2A 2A  00 34 19 49 4E 8D 20 31  |CTER ***.4.IN. 1|
00001130: 30 30 30 30 00 49 19 4A  4E 49 24 B2 49 24 AA 42  |0000.I.JNI$.I$.B|
00001140: 24 3A 89 20 32 30 30 31  30 00 6F 19 4B 4E 8F 20  |$:. 20010.o.KN. |
00001150: 2A 2A 2A 20 44 45 4C 45  54 45 20 4B 45 59 3A 20  |*** DELETE KEY: |
00001160: 44 4F 4E 54 20 44 45 4C  45 54 45 20 2A 2A 2A 00  |DONT DELETE ***.|
00001170: 95 19 4C 4E 8F 20 2A 2A  2A 20 20 20 20 49 46 20  |..LN. ***    IF |
00001180: 4E 4F 54 48 49 4E 47 20  54 48 45 52 45 20 20 20  |NOTHING THERE   |
00001190: 20 20 2A 2A 2A 00 AB 19  4D 4E 8B 20 C3 28 49 24  |  ***...MN. .(I$|
000011A0: 29 B2 30 20 A7 20 32 30  30 31 30 00 D1 19 4E 4E  |).0 . 20010...NN|
000011B0: 8F 20 2A 2A 2A 20 4D 4F  56 45 20 42 41 43 4B 20  |. *** MOVE BACK |
000011C0: 41 4E 44 20 42 4C 41 4E  4B 20 4F 4E 45 20 2A 2A  |AND BLANK ONE **|
000011D0: 2A 00 F7 19 4F 4E 8F 20  2A 2A 2A 20 20 20 20 43  |*...ON. ***    C|
000011E0: 48 41 52 3B 20 55 50 44  41 54 45 20 49 4E 50 55  |HAR; UPDATE INPU|
000011F0: 54 20 20 20 2A 2A 2A 00  37 1A 52 4E 58 B2 58 AB  |T   ***.7.RNX.X.|
00001200: 31 3A 5A B2 59 AC 33 32  30 AA 58 AC 38 AA 38 31  |1:Z.Y.320.X.8.81|
00001210: 39 32 3A 81 20 49 B2 30  20 A4 20 37 3A 97 20 5A  |92:. I.0 . 7:. Z|
00001220: AA 49 2C 30 3A 82 3A 49  24 B2 C8 28 49 24 2C C3  |.I,0:.:I$..(I$,.|
00001230: 28 49 24 29 AB 31 29 00  53 1A 5A 4E 8F 20 2A 2A  |(I$).1).S.ZN. **|
00001240: 2A 20 47 45 54 20 4E 45  58 54 20 43 48 41 52 20  |* GET NEXT CHAR |
00001250: 2A 2A 2A 00 5F 1A 5C 4E  89 20 32 30 30 31 30 00  |***._.\N. 20010.|
00001260: 84 1A 62 4E 8F 20 2A 2A  2A 20 42 4C 41 4E 4B 20  |..bN. *** BLANK |
00001270: 49 4E 50 55 54 20 49 46  20 44 45 53 49 52 45 44  |INPUT IF DESIRED|
00001280: 20 2A 2A 2A 00 A9 1A 64  4E 8F 20 2A 2A 2A 20 20  | ***...dN. ***  |
00001290: 20 20 20 20 45 4C 53 45  20 52 45 54 55 52 4E 20  |    ELSE RETURN |
000012A0: 20 20 20 20 20 20 2A 2A  2A 00 B8 1A 66 4E 8B 20  |      ***...fN. |
000012B0: 42 4C B2 30 20 A7 20 8E  00 DC 1A 6A 4E 8F 20 2A  |BL.0 . ....jN. *|
000012C0: 2A 2A 20 53 54 41 52 54  49 4E 47 20 41 44 44 52  |** STARTING ADDR|
000012D0: 45 53 53 20 46 4F 52 20  20 2A 2A 2A 00 00 1B 6C  |ESS FOR  ***...l|
000012E0: 4E 8F 20 2A 2A 2A 20 42  4C 41 4E 4B 49 4E 47 20  |N. *** BLANKING |
000012F0: 41 4E 44 20 42 4C 41 4E  4B 49 4E 47 20 2A 2A 2A  |AND BLANKING ***|
00001300: 00 24 1B 6E 4E 8F 20 2A  2A 2A 20 20 20 20 20 20  |.$.nN. ***      |
00001310: 20 20 20 4C 4F 4F 50 20  20 20 20 20 20 20 20 20  |   LOOP         |
00001320: 20 2A 2A 2A 00 5C 1B 70  4E 5A B2 33 32 30 AC 48  | ***.\.pNZ.320.H|
00001330: 59 AA 38 AC 48 58 AA 38  31 39 32 3A 81 20 49 B2  |Y.8.HX.8192:. I.|
00001340: 30 20 A4 20 28 48 42 AA  C3 28 49 24 29 29 AC 38  |0 . (HB..(I$)).8|
00001350: 3A 97 20 5A AA 49 2C 30  3A 82 3A 8E 00 62 1B B8  |:. Z.I,0:.:..b..|
00001360: 74 3A 00 68 1B BA 74 3A  00 84 1B CC 74 8F 20 2A  |t:.h..t:....t. *|
00001370: 2A 2A 20 20 52 4F 55 54  49 4E 45 20 33 20 20 20  |**  ROUTINE 3   |
00001380: 20 2A 2A 2A 00 A0 1B CE  74 8F 20 2A 2A 2A 20 44  | ***....t. *** D|
00001390: 52 41 57 20 41 20 4C 49  4E 45 20 20 20 2A 2A 2A  |RAW A LINE   ***|
000013A0: 00 A6 1B CF 74 3A 00 CA  1B D0 74 8F 20 2A 2A 2A  |....t:....t. ***|
000013B0: 20 20 43 41 4C 43 55 4C  41 54 45 20 53 4C 4F 50  |  CALCULATE SLOP|
000013C0: 45 20 41 4E 44 20 20 2A  2A 2A 00 EE 1B D2 74 8F  |E AND  ***....t.|
000013D0: 20 2A 2A 2A 20 20 20 44  45 43 49 44 45 20 57 48  | ***   DECIDE WH|
000013E0: 45 54 48 45 52 20 54 4F  20 20 20 2A 2A 2A 00 12  |ETHER TO   ***..|
000013F0: 1C D4 74 8F 20 2A 2A 2A  20 20 20 20 49 4E 43 52  |..t. ***    INCR|
00001400: 45 4D 45 4E 54 20 58 20  4F 52 20 59 20 20 20 2A  |EMENT X OR Y   *|
00001410: 2A 2A 00 28 1C 30 75 58  44 B2 58 31 AB 58 32 3A  |**.(.0uXD.X1.X2:|
00001420: 59 44 B2 59 31 AB 59 32  00 38 1C 3A 75 8B 58 44  |YD.Y1.Y2.8.:u.XD|
00001430: B2 30 A7 33 30 32 30 30  00 48 1C 44 75 8B 59 44  |.0.30200.H.Du.YD|
00001440: B2 30 A7 33 30 33 30 30  00 5E 1C 4E 75 4D B2 59  |.0.30300.^.NuM.Y|
00001450: 44 AD 58 44 3A 53 B2 59  31 AB 4D AC 58 31 00 72  |D.XD:S.Y1.M.X1.r|
00001460: 1C 58 75 8B B6 28 4D 29  B3 B2 2E 35 A7 33 30 34  |.Xu..(M)...5.304|
00001470: 30 30 00 88 1C 62 75 4D  B2 58 44 AD 59 44 3A 53  |00...buM.XD.YD:S|
00001480: B2 58 31 AB 4D AC 59 31  00 A3 1C 6C 75 8F 20 2A  |.X1.M.Y1...lu. *|
00001490: 2A 2A 20 43 41 4C 43 55  4C 41 54 45 20 58 20 20  |** CALCULATE X  |
000014A0: 2A 2A 2A 00 BE 1C 6E 75  8F 20 2A 2A 2A 20 53 54  |***...nu. *** ST|
000014B0: 45 50 20 41 4C 4F 4E 47  20 59 20 2A 2A 2A 00 E6  |EP ALONG Y ***..|
000014C0: 1C 94 75 81 59 B2 59 31  A4 59 32 A9 B4 28 59 32  |..u.Y.Y1.Y2..(Y2|
000014D0: AB 59 31 29 3A 58 B2 4D  AC 59 AA 53 3A 8D 31 30  |.Y1):X.M.Y.S:.10|
000014E0: 30 30 3A 82 3A 8E 00 02  1D D0 75 8F 20 2A 2A 2A  |00:.:.....u. ***|
000014F0: 20 56 45 52 54 49 43 41  4C 20 4C 49 4E 45 20 2A  | VERTICAL LINE *|
00001500: 2A 2A 00 1E 1D D2 75 8F  20 2A 2A 2A 20 20 53 54  |**....u. ***  ST|
00001510: 45 50 20 41 4C 4F 4E 47  20 59 20 2A 2A 2A 00 43  |EP ALONG Y ***.C|
00001520: 1D F8 75 58 B2 58 31 3A  81 59 B2 59 31 A4 59 32  |..uX.X1:.Y.Y1.Y2|
00001530: A9 B4 28 59 32 AB 59 31  29 3A 8D 31 30 30 30 3A  |..(Y2.Y1):.1000:|
00001540: 82 3A 8E 00 61 1D 34 76  8F 20 2A 2A 2A 20 48 4F  |.:..a.4v. *** HO|
00001550: 52 49 5A 4F 4E 54 41 4C  20 4C 49 4E 45 20 2A 2A  |RIZONTAL LINE **|
00001560: 2A 00 7F 1D 36 76 8F 20  2A 2A 2A 20 20 20 53 54  |*...6v. ***   ST|
00001570: 45 50 20 41 4C 4F 4E 47  20 58 20 20 2A 2A 2A 00  |EP ALONG X  ***.|
00001580: A4 1D 5C 76 59 B2 59 31  3A 81 58 B2 58 31 A4 58  |..\vY.Y1:.X.X1.X|
00001590: 32 A9 B4 28 58 32 AB 58  31 29 3A 8D 31 30 30 30  |2..(X2.X1):.1000|
000015A0: 3A 82 3A 8E 00 BF 1D 98  76 8F 20 2A 2A 2A 20 43  |:.:.....v. *** C|
000015B0: 41 4C 43 55 4C 41 54 45  20 59 20 20 2A 2A 2A 00  |ALCULATE Y  ***.|
000015C0: DA 1D 9A 76 8F 20 2A 2A  2A 20 53 54 45 50 20 41  |...v. *** STEP A|
000015D0: 4C 4F 4E 47 20 58 20 2A  2A 2A 00 02 1E C0 76 81  |LONG X ***....v.|
000015E0: 58 B2 58 31 A4 58 32 A9  B4 28 58 32 AB 58 31 29  |X.X1.X2..(X2.X1)|
000015F0: 3A 59 B2 4D AC 58 AA 53  3A 8D 31 30 30 30 3A 82  |:Y.M.X.S:.1000:.|
00001600: 3A 8E 00 00 00                                    |:....           |
..!.... ***CHANGE SCREEN COLOR***.A.... 
***PRINT WAIT MESSAGE ***.Z.... 53280,11
:. 53281,0......".................CLEARI
NG HIGH RES SCREEN . . "......".........
.PLEASE WAIT 35 SECONDS"......".........
....ZX COMMODORE-64 HI-RESOLUTION DEMO A
S"...... *** CLEAR HI-RES SCREEN ***.1..
.. I.8192 . 16192:. I,0:..X.... *** SET 
UP POWERS OF 2 TABLE ***..... ***    FO
R ROUTINES 4 & 5    ***...... I.0 . 7:P(
I).2.(7.I):P1(I).255.P(I):..S.... ***   
START HI-RES MODE AND   ***...... *** SE
T HI-RES SCREEN AT 8192 ***.+....".":. 5
3265,B(53265).32:. 53272,B(53272).8.Q...
. ***    SET HI-RES COLORS    ***.W.... 
***UPPER NYBBLE FOR "1" BITS***...... **
*LOWER NYBBLE FOR "0" BITS***...... I.10
24 . 2023:. I,192:....D.. ***PRINT STRIN
GS USING***...E.. ***     ROUTINE 1     
***.3.F.L.0:R.0:X.0:Y.13:B1.53248:O.1:B$
."-2.....G":. 10000.P.G.X.20:Y.13:B$."0"
:. 10000.W.H.X.37:Y.13:B$."...Y....+2.":
. 10000...I.X.19:Y.3:B$."F+1":. 10000...
J.X.19:Y.21:B$."D-1":. 10000...K.R.1:X.1
:Y.23:B$."ZX C.OMMODORE-64 HI-RESOLUTION
 DEMO .AS":. 10000...L.. *** PRINT AXIS 
USING ***.8.M.. ***    ROUTINE 3     ***
.^.N.X1.0:Y1.100:X2.319:Y2.100:. 30000.}
.Q.. *** PRINT AXIS USING ***...R.. *** 
   ROUTINE 4     ***.I.S.. Y.25 . 174:X.
158:. 1000:X.157:. 1000:....T.. *** GET 
USER INPUT WITH ***...U.. ***      ROUTI
NE 2      ***.G.X.BL.1:X.0:Y.0:R.0:B$."I
NPUT PERIOD ? ":. 20000:J.E(I$).E.}.. **
* PLOT SINE CURVE ***...~.. *** USING RO
UTINE 4 ***...... X.0 . 319:Z..((X.158).
25.J):Y..(100.70.Z.Z.Z):. 1000:....... *
** LABEL PLOT WITH INPUT ***...... ***  
  USING ROUTINE 1    ***.5...L.1:R.0:X.4
:Y.1:B$."Y=.S.IN.3.(":. 10000.X...B$.I$:
. 10000:B$."*X)":. 10000.|.... *** PAUSE
 LOOP: WHEN "A"  ***. .... *** IS RECEIV
ED GO BACK   ***.D.... ***   TO STANDARD
 MODE    ***...... ***      AND STOP    
     ***...... A$:. A$."" . 145.4.... 53
265,B(53265).223:.".";:. 53272,B(53272).
21:..:.V.:.@.X.:.D.... ***     ROUTINES 
4 & 5    ***...... ***    FOR PLOTTING A
ND   ***...... ***   UNPLOTTING POINTS  
 ***.P.... *** SEE REF. GUIDE PG 125 ***
.V...:.....B..(Y.8).320..(X.8).8.(Y.7).8
192:. B,B(B).P(X.7):..E...B..(Y.8).320..
(X.8).8.(Y.7).8192:. B,B(B).P1(X.7):..K.
.&:.Q..&:.W..'. *** ROUTINE 1: FOR PRINT
ING ***....'. ***   STRINGS IN HI- RES  
  ***....':.F..'. *** DISABLE INTERRUPTS
 & ***....'. ***  SWITCH IN CHAR ROM  **
*....'. *** CALCULATE CHAR BASE  ***.F..
'. 56334,B(56334).254:. 1,B(1).251:B2.B1
.R.1024.L.2048.F..'. ***  GET A CHARACTE
R  ***....'. *** FROM INPUT STRING ***..
.$'. I.1 . C(B$):C.F(J(B$,I,1)).H.*'. **
* SPECIAL CHARACTERS ***...,'. ***  DECO
DING SECTION  ***....'. C.145 . Y.Y.1:.:
.:. ** CURSOR UP **.>.8'. C.17 . Y.Y.1:.
:.:. ** CURSOR DOWN **.J.B'. C.29 . X.X.
1:.:.:. ** CURSOR RIGHT **...L'. C.157 .
 X.X.1:.:.:. ** CURSOR LEFT **.P.V'. C.1
8 . R.1:B2.B1.1024.L.2048:.:.:. ** REVER
SE ON **...`'. C.146 . R.0:B2.B1.L.2048:
.:.:. ** REVERSE OFF **.4.J'. C.19 . X.0
:Y.0:.:.:. ** CURSOR HOME **.T.T'. C.14 
. L.1:B2.B1.R.1024.2048:.:.:. ** START L
OWER CASE **....'. C.142 . L.0:B2.B1.R.1
024:.:.:. ** STOP LOWER CASE **....'. C.
255 . C.126:. ** "." IS SPECIAL CASE **.
...'. ***  TRANSLATE CHR$ CODES  ***.)..
'. *** TO SCREEN CODES: CHARS ***.N..'. 
*** PATTERNS IN ROM STORED ***.S..'. ***
    BY SCREEN CODE      ***....'. C.32.1
 . 10150,10200,10170,10160,10150,10170,1
0190,10170.C..'C.32:. 10200.V..'C.C.32:.
 10200....'C.C.64:. 10200...D'C.C.96:. 1
0200...N'C.C.128.-.P'. *** CALCULATE STA
RTING POS ***.R.R'. ***   FOR STRING AND
 CHAR  ***.W.T'. ***       DEFINITION   
    ***...X'Z.Y.320.X.8.8192:C.C.8.B2...
.'. *** POKE DEFINITION INTO ***....'. *
**   HI-RES LOCATION    ***....(. J.0 . 
7:. Z.J,(O.B(Z.J)).B(C.J):.:X.X.1:.....(
. *** RE-ENABLE INTERRUPTS ***.Q..(. ***
  AND SWITCH OUT ROM  ***.U.2(. 1,B(1).4
:. 56334,B(56334).1:..{..M:....M:....M. 
*** ROUTINE 2-USER INPUT    ***....M:.S.
.M. *** INITIALIZE INPUT STRING ***....M
. *** SAVE START POSITION AND ***...BM. 
***    LENGTH OF PROMPT     ***.D. NI$."
":HX.X:HY.Y:HB.C(B$):. 10000.].(N. *** G
ET A CHAR ***.V.*N. B$:. B$."" . 20010..
..N. *** CHECK FOR SPECIAL CHARS ***.B.0
N. ***    ONLY FIRST TWO ARE   ***...2N.
 ***DIFFERENT FROM ROUTINE 1 ***...4N. B
$.G(13) . 20070:. *** RETURN ***.8.>N. B
$.G(20) . 20045:. *** DELETE ***.P.?N. B
$.G(145) . 20041.G.@N. B$.G(17) . 20041.
~.AN. B$.G(29) . 20041...BN. B$.G(157) .
 20041...CN. B$.G(18) . 20041.E.DN. B$.G
(146) . 20041...EN. B$.G(19) . 20041...F
N. B$.G(14) . 20041...GN. B$.G(142) . 20
041.(.HN. *** ECHO CHARACTER ***.4.IN. 1
0000.I.JNI$.I$.B$:. 20010.O.KN. *** DELE
TE KEY: DONT DELETE ***...LN. ***    IF 
NOTHING THERE     ***...MN. C(I$).0 . 20
010.Q.NN. *** MOVE BACK AND BLANK ONE **
*...ON. ***    CHAR; UPDATE INPUT   ***.
7.RNX.X.1:Z.Y.320.X.8.8192:. I.0 . 7:. Z
.I,0:.:I$.H(I$,C(I$).1).S.ZN. *** GET NE
XT CHAR ***._.\N. 20010...BN. *** BLANK 
INPUT IF DESIRED ***...DN. ***      ELSE
 RETURN       ***...FN. BL.0 . ....JN. *
** STARTING ADDRESS FOR  ***...LN. *** B
LANKING AND BLANKING ***.$.NN. ***      
   LOOP          ***.\.PNZ.320.HY.8.HX.8
192:. I.0 . (HB.C(I$)).8:. Z.I,0:.:..B..
T:.H..T:...LT. ***  ROUTINE 3    ***. .N
T. *** DRAW A LINE   ***...OT:.J.PT. ***
  CALCULATE SLOPE AND  ***...RT. ***   D
ECIDE WHETHER TO   ***...TT. ***    INCR
EMENT X OR Y   ***.(.0UXD.X1.X2:YD.Y1.Y2
.8.:U.XD.0.30200.H.DU.YD.0.30300.^.NUM.Y
D.XD:S.Y1.M.X1.R.XU..(M)...5.30400...BUM
.XD.YD:S.X1.M.Y1...LU. *** CALCULATE X  
***...NU. *** STEP ALONG Y ***....U.Y.Y1
.Y2..(Y2.Y1):X.M.Y.S:.1000:.:....PU. ***
 VERTICAL LINE ***...RU. ***  STEP ALONG
 Y ***.C..UX.X1:.Y.Y1.Y2..(Y2.Y1):.1000:
.:..A.4V. *** HORIZONTAL LINE ***..6V. 
***   STEP ALONG X  ***...\VY.Y1:.X.X1.X
2..(X2.X1):.1000:.:.....V. *** CALCULATE
 Y  ***.Z..V. *** STEP ALONG X ***....V.
X.X1.X2..(X2.X1):Y.M.X.S:.1000:.:....
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL