MAC.TUTOR 4
FILE INFORMATION
FILENAME(S): MAC.TUTOR 4
FILE TYPE(S): PRG
FILE SIZE: 27.8K
FIRST SEEN: 2025-11-30 15:51:26
APPEARS ON: 1 disk(s)
FILE HASH
8a304172f38578fc171620498ec4891d07e76309e62e28c22b168176886348d9
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| LO | MAC.TUTOR 4 | PRG | Belgium | 7 | 6 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
> DETECTED: COMMODORE BASIC PROGRAM (LOAD ADDRESS $0801)
00000000: 01 08 21 08 13 18 9E 33 30 37 32 3A 20 41 4E 59 |..!....3072: ANY|
00000010: 91 45 20 44 49 44 20 49 54 20 41 47 41 49 4E 20 |.E DID IT AGAIN |
00000020: 21 00 00 00 20 20 20 20 20 20 20 20 20 20 20 20 |!... |
00000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000100: 20 FB A4 B7 F0 0B 88 B1 BB D9 41 03 D0 CE 98 D0 | .........A.....|
00000110: F5 84 90 20 D2 F5 AD 3E 03 38 ED 3C 03 08 18 65 |... ...>.8.<...e|
00000120: C3 85 AE AD 3F 03 65 C4 28 ED 3D 03 85 AF 20 6C |....?.e.(.=... l|
00000130: CF A5 BD 45 D7 05 90 F0 04 A9 FF 85 90 4C A9 F5 |...E.........L..|
00000140: 20 2C A8 A0 00 84 C0 AD 11 D0 29 EF 8D 11 D0 CA | ,........).....|
00000150: D0 FD 88 D0 FA 78 60 A0 00 A9 02 20 29 CF A2 07 |.....x`.... )...|
00000160: 88 C0 09 D0 F4 A2 05 C6 AB D0 EE 98 20 29 CF A2 |............ )..|
00000170: 07 88 D0 F7 CA CA 60 85 BD 45 D7 85 D7 A9 08 85 |......`..E......|
00000180: A3 06 BD A5 01 29 F7 20 4A CF A2 11 09 08 20 4A |.....). J..... J|
00000190: CF A2 0E C6 A3 D0 EA 60 CA D0 FD 90 05 A2 0B CA |.......`........|
000001A0: D0 FD 85 01 60 20 9B CF C9 00 F0 F9 85 AB 20 C9 |....` ........ .|
000001B0: CF 91 B2 C8 C0 C0 D0 F6 F0 23 20 9B CF 20 C9 CF |.........# .. ..|
000001C0: 91 C3 45 D7 85 D7 E6 C3 D0 02 E6 C4 A5 C3 C5 AE |..E.............|
000001D0: A5 C4 E5 AF 90 E7 20 C9 CF 20 F5 CE C8 84 C0 58 |...... .. .....X|
000001E0: 18 A9 00 8D A0 02 4C 93 FC 20 17 F8 20 F2 CE 84 |......L.. .. ...|
000001F0: D7 A9 00 8D 06 DD A2 01 20 D9 CF 26 BD A5 BD C9 |........ ..&....|
00000200: 02 D0 F5 A0 09 20 C9 CF C9 02 F0 F9 C4 BD D0 E8 |..... ..........|
00000210: 20 C9 CF 88 D0 F6 60 A9 08 85 A3 20 D9 CF 26 BD | .....`.... ..&.|
00000220: C6 A3 D0 F7 A5 BD 60 A9 10 2C 0D DC F0 FB AD 0D |......`..,......|
00000230: DD 8E 07 DD 48 A9 19 8D 0F DD 68 4A 4A 60 0D DC |....H.....hJJ`..|
00000240: F0 FB AD 0D DD 8E 07 DD 48 A9 19 8D 0F DD 68 4A |........H.....hJ|
00000250: 4A 60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |J`..............|
00000260: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000270: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000280: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000290: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000002F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000300: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000310: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000320: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000330: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000340: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000350: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000360: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000370: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000380: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000390: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003A0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003B0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003C0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003D0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003E0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000003F0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000400: 00 D8 78 A2 FF 9A A5 00 29 FE 85 00 AD 02 DD 09 |..x.....).......|
00000410: 03 8D 02 DD AD 00 DD 29 FC 09 01 8D 00 DD AD 11 |.......)........|
00000420: D0 09 20 8D 11 D0 A9 00 8D 20 D0 AD 18 D0 29 F0 |.. ...... ....).|
00000430: 09 0C 29 0F 09 30 8D 18 D0 20 66 0C A9 00 8D 65 |..)..0... f....e|
00000440: C0 8D 64 C0 A9 0C 20 A6 31 20 7A 0E 4C 1B 10 A9 |..d... .1 z.L...|
00000450: 14 8D 01 C0 A9 01 8D 00 C0 A9 40 8D 0E D4 20 06 |..........@... .|
00000460: 35 20 66 0C 4C 87 0C A2 14 A9 14 9D 34 C0 BD 80 |5 f.L.......4...|
00000470: 0E 9D 00 80 CA 10 F2 A9 EC 85 16 A9 1C 85 17 A9 |................|
00000480: 02 8D 0A C0 8D 12 C0 60 A9 1F 20 A6 31 A9 00 20 |.......`.. .1.. |
00000490: A6 31 20 A6 31 4C 9D 0C A9 00 8D F0 02 60 A9 1F |.1 .1L.......`..|
000004A0: 85 1A A9 1E 85 1B A0 00 B1 1A C9 FF F0 0A 20 A6 |.............. .|
000004B0: 31 C8 D0 F4 E6 1B D0 F0 A9 01 8D 03 C0 20 97 0C |1............ ..|
000004C0: A9 1F 20 A6 31 AD 01 C0 20 A6 31 AD 00 C0 20 A6 |.. .1... .1... .|
000004D0: 31 20 25 34 8D 02 C0 AD 69 C0 F0 03 4C 28 12 AD |1 %4....i...L(..|
000004E0: 03 C0 F0 24 AD 02 C0 C9 20 D0 27 A9 1F 20 A6 31 |...$.... .'.. .1|
000004F0: A9 1A 20 A6 31 AD 00 C0 20 A6 31 A9 1B 8D 01 C0 |.. .1... .1.....|
00000500: A9 00 8D 03 C0 4C BF 0C AD 02 C0 C9 20 D0 03 4C |.....L...... ..L|
00000510: 31 0D AD 01 C0 C9 1A B0 05 A9 01 8D 03 C0 AD 02 |1...............|
00000520: C0 C9 41 B0 03 4C 44 0D C9 5B 90 03 4C 44 0D 4C |..A..LD..[..LD.L|
00000530: 31 0D AD 01 C0 C9 27 F0 09 AD 02 C0 20 10 34 EE |1.....'..... .4.|
00000540: 01 C0 4C BF 0C AD 02 C0 C9 30 B0 03 4C 55 0D C9 |..L......0..LU..|
00000550: 3A B0 03 4C 31 0D AD 02 C0 C9 14 D0 12 AD 01 C0 |:..L1...........|
00000560: C9 14 F0 0B CE 01 C0 A9 14 20 A6 31 4C BF 0C AD |......... .1L...|
00000570: 02 C0 C9 0D D0 14 AD 00 C0 C9 10 F0 0D A9 01 8D |................|
00000580: 03 C0 A9 14 8D 01 C0 EE 00 C0 A2 04 BD E7 1C CD |................|
00000590: 02 C0 F0 06 CA 10 F5 4C 9C 0D 4C 31 0D AD 02 C0 |.......L..L1....|
000005A0: C9 9D D0 10 AD 01 C0 C9 14 D0 03 4C BF 0C CE 01 |...........L....|
000005B0: C0 4C BF 0C C9 1D D0 15 AD 01 C0 C9 27 D0 03 4C |.L..........'..L|
000005C0: BF 0C EE 01 C0 A9 00 8D 03 C0 4C BF 0C C9 91 D0 |..........L.....|
000005D0: 10 AD 00 C0 C9 01 D0 03 4C BF 0C CE 00 C0 4C BF |........L.....L.|
000005E0: 0C C9 11 D0 10 AD 00 C0 C9 10 D0 03 4C BF 0C EE |............L...|
000005F0: 00 C0 4C BF 0C AD 67 C0 F0 15 20 7A 0E A9 0C 20 |..L...g... z... |
00000600: 10 34 A9 01 8D 00 C0 A9 14 8D 01 C0 4C 4E 0C AD |.4..........LN..|
00000610: 68 C0 F0 03 4C 19 0E 4C BF 0C A9 00 AA 9D 00 7B |h...L..L.......{|
00000620: 9D 00 09 9D 00 0A 9D 00 0B 9D 00 08 9D 00 C1 E8 |................|
00000630: F0 04 10 E9 D0 EA A9 01 8D 09 C0 A9 00 8D 04 C0 |................|
00000640: 8D 05 C0 8D 07 C0 A9 02 8D 06 C0 A9 FF 8D 0F C0 |................|
00000650: 20 7A 0E 20 06 35 4C D2 13 A5 17 8D 02 C0 A0 00 | z. .5L.........|
00000660: B1 16 C9 FF F0 0A 20 A6 31 C8 D0 F4 E6 17 D0 F0 |...... .1.......|
00000670: AD 02 C0 85 17 20 A7 18 4C 89 0E A9 01 8D F0 02 |..... ..L.......|
00000680: 60 00 0C 00 0C C3 C2 CD 38 30 20 47 1A D8 20 E2 |`.......80 G.. .|
00000690: 22 D8 78 20 25 34 8D 02 C0 C9 5F D0 03 4C 4E 0C |".x %4...._..LN.|
000006A0: AD 69 C0 D0 28 AD 02 C0 C9 88 F0 18 C9 0D D0 E1 |.i..(...........|
000006B0: 20 7A 23 D8 20 A7 18 EE 09 C0 AD 09 C0 C9 11 D0 | z#. ...........|
000006C0: C9 4C 63 35 20 BD 17 20 A7 18 4C 90 0E AD 0A C0 |.Lc5 .. ..L.....|
000006D0: C9 01 D0 0E A9 02 8D 0A C0 20 2D 1A 20 47 1A 4C |......... -. G.L|
000006E0: 58 0E A2 00 A9 1F 20 A6 31 A9 00 20 A6 31 20 A6 |X..... .1.. .1 .|
000006F0: 31 A0 11 A9 20 20 A6 31 88 D0 F8 A9 0D 20 10 34 |1... .1..... .4|
00000700: E8 E0 14 D0 EC A9 1C 85 70 A9 1F 85 71 A9 1F 20 |........p...q.. |
00000710: A6 31 A9 00 20 A6 31 A9 15 20 A6 31 A0 00 B1 70 |.1.. .1.. .1...p|
00000720: C9 FF F0 0A 20 A6 31 C8 D0 F4 E6 71 D0 F0 A9 01 |.... .1....q....|
00000730: 8D 0A C0 20 A7 18 20 26 13 20 47 1A 4C 8C 0E A9 |... .. &. G.L...|
00000740: 00 8D 2A C0 8D 32 C0 A2 03 20 4E 0F 4C 7A 0F AD |..*..2... N.Lz..|
00000750: 2E C0 C9 30 90 0D C9 47 B0 09 C9 3A 90 04 C9 41 |...0...G...:...A|
00000760: 90 01 60 A0 02 B9 2B C0 C8 99 2B C0 88 88 C0 FF |..`...+...+.....|
00000770: D0 F3 A9 30 8D 2B C0 CA D0 D5 60 A9 3A CD 2E C0 |...0.+....`.:...|
00000780: 90 10 AD 2E C0 38 E9 30 18 6D 2A C0 8D 2A C0 4C |.....8.0.m*..*.L|
00000790: 9E 0F AD 2E C0 38 E9 37 18 6D 2A C0 8D 2A C0 A9 |.....8.7.m*..*..|
000007A0: 3A CD 2D C0 90 14 AD 2D C0 38 E9 30 0A 0A 0A 0A |:.-....-.8.0....|
000007B0: 18 6D 2A C0 8D 2A C0 4C CA 0F AD 2D C0 38 E9 37 |.m*..*.L...-.8.7|
000007C0: 0A 0A 0A 0A 18 6D 2A C0 8D 2A C0 A9 3A CD 2C C0 |.....m*..*..:.,.|
000007D0: 90 10 AD 2C C0 38 E9 30 18 6D 32 C0 8D 32 C0 4C |...,.8.0.m2..2.L|
000007E0: EE 0F AD 2C C0 38 E9 37 18 6D 32 C0 8D 32 C0 A9 |...,.8.7.m2..2..|
000007F0: 3A CD 2B C0 90 14 AD 2B C0 38 E9 30 0A 0A 0A 0A |:.+....+.8.0....|
00000800: 18 6D 32 C0 8D 32 C0 4C 1A 10 AD 2B C0 38 E9 37 |.m2..2.L...+.8.7|
00000810: 0A 0A 0A 0A 18 6D 32 C0 8D 32 C0 60 A9 07 8D 62 |.....m2..2.`...b|
00000820: C0 20 7A 0E A9 77 85 1C A9 3C 85 1D A9 74 85 12 |. z..w...<...t..|
00000830: A9 10 85 13 20 57 10 A0 00 B1 1C 8D 60 C0 C8 B1 |.... W......`...|
00000840: 1C 18 69 01 85 12 C8 B1 1C 69 00 85 13 20 57 10 |..i......i... W.|
00000850: CE 60 C0 D0 E9 4C 5F 11 8C 02 C0 A0 00 B1 12 C9 |.`...L_.........|
00000860: FF F0 0E C9 FE F0 0D 20 A6 31 C8 D0 F0 E6 13 D0 |....... .1......|
00000870: EC AC 02 C0 60 0C 1F 01 01 8D 84 9D 87 54 48 45 |....`........THE|
00000880: 20 43 4F 4D 50 4C 45 54 45 20 4D 41 43 48 49 4E | COMPLETE MACHIN|
00000890: 45 20 43 4F 44 45 20 54 55 54 4F 52 20 20 9C 1F |E CODE TUTOR ..|
000008A0: 01 02 8D 84 9D 87 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |......**********|
000008B0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A 2A |****************|
000008C0: 2A 2A 2A 2A 2A 20 20 9C 1F 00 16 81 9D 87 20 20 |***** ....... |
000008D0: 20 20 20 20 20 20 20 20 20 20 42 59 20 50 41 55 | BY PAU|
000008E0: 4C 20 42 55 4E 4E 0D 0A 81 9D 87 20 20 28 43 29 |L BUNN..... (C)|
000008F0: 20 31 39 38 34 20 4E 45 57 20 47 45 4E 45 52 41 | 1984 NEW GENERA|
00000900: 54 49 4F 4E 20 53 4F 46 54 57 41 52 45 1F 00 04 |TION SOFTWARE...|
00000910: 43 68 6F 6F 73 65 20 73 65 6C 65 63 74 69 6F 6E |Choose selection|
00000920: 20 62 79 20 70 72 65 73 73 69 6E 67 20 52 45 54 | by pressing RET|
00000930: 55 52 4E 2E 0D 0A 57 68 65 6E 20 63 68 6F 69 63 |URN...When choic|
00000940: 65 20 69 73 20 6D 61 64 65 20 70 72 65 73 73 20 |e is made press |
00000950: 74 68 65 20 53 50 41 43 45 20 42 41 52 2E 0A FF |the SPACE BAR...|
00000960: A0 00 B1 1C 8D 60 C0 A9 07 8D 02 C0 A9 1F 20 A6 |.....`........ .|
00000970: 31 A9 00 20 A6 31 AD 02 C0 20 A6 31 A9 9C 20 A6 |1.. .1... .1.. .|
00000980: 31 EE 02 C0 AD 02 C0 C9 16 D0 E1 A9 1F 20 A6 31 |1............ .1|
00000990: A9 00 20 A6 31 AD 62 C0 20 A6 31 A9 82 20 A6 31 |.. .1.b. .1.. .1|
000009A0: A9 9D 20 A6 31 A9 87 20 A6 31 20 25 34 C9 0D D0 |.. .1.. .1 %4...|
000009B0: 16 EE 62 C0 18 AD 60 C0 69 07 CD 62 C0 D0 A8 A9 |..b...`.i..b....|
000009C0: 07 8D 62 C0 4C 66 11 C9 20 F0 03 4C A9 11 AD 62 |..b.Lf.. ..L...b|
000009D0: C0 38 E9 07 0A 18 69 01 A8 B1 1C 85 1A C8 B1 1C |.8....i.........|
000009E0: 85 1B A0 00 B1 1A 8D 61 C0 B1 1A C9 FF F0 03 C8 |.......a........|
000009F0: D0 F7 C8 B1 1A 85 12 C8 B1 1A 85 13 A9 0C 20 A6 |.............. .|
00000A00: 31 AD 61 C0 C9 02 F0 37 20 57 10 8D 14 C0 8C 0B |1.a....7 W......|
00000A10: C0 20 73 12 AD 14 C0 C9 FF F0 0E A9 0C 20 A6 31 |. s.......... .1|
00000A20: AC 0B C0 20 69 10 4C 0A 12 EE 62 C0 AD 60 C0 18 |... i.L...b..`..|
00000A30: 69 07 CD 62 C0 D0 05 A9 07 8D 62 C0 4C 20 10 A9 |i..b......b.L ..|
00000A40: 01 8D 02 C0 A0 00 A9 1F 20 A6 31 A9 14 20 A6 31 |........ .1.. .1|
00000A50: AD 02 C0 20 A6 31 B1 12 C9 0D F0 0E C9 FF F0 11 |... .1..........|
00000A60: 20 A6 31 C8 D0 F0 E6 13 D0 EC EE 02 C0 C8 4C 45 | .1...........LE|
00000A70: 12 4C 19 0E A5 12 85 1A A5 13 85 1B A9 96 85 12 |.L..............|
00000A80: A9 12 85 13 20 57 10 20 25 34 C9 20 D0 F9 A5 1A |.... W. %4. ....|
00000A90: 85 12 A5 1B 85 13 60 1F 05 17 83 50 52 45 53 53 |......`....PRESS|
00000AA0: 20 53 50 41 43 45 20 42 41 52 20 54 4F 20 43 4F | SPACE BAR TO CO|
00000AB0: 4E 54 49 4E 55 45 FF A9 00 8D 2A C0 8D 32 C0 20 |NTINUE....*..2. |
00000AC0: 4E 0F AD 2B C0 C9 30 F0 17 18 A9 E8 6D 2A C0 8D |N..+..0.....m*..|
00000AD0: 2A C0 AD 32 C0 69 03 8D 32 C0 CE 2B C0 4C C1 12 |*..2.i..2..+.L..|
00000AE0: AD 2C C0 C9 30 F0 0B A9 64 20 16 13 CE 2C C0 4C |.,..0...d ...,.L|
00000AF0: DF 12 AD 2D C0 C9 30 F0 0B A9 0A 20 16 13 CE 2D |...-..0.... ...-|
00000B00: C0 4C F1 12 AD 2E C0 C9 30 F0 0B A9 01 20 16 13 |.L......0.... ..|
00000B10: CE 2E C0 4C 03 13 60 18 6D 2A C0 8D 2A C0 AD 32 |...L..`.m*..*..2|
00000B20: C0 69 00 8D 32 C0 60 A9 00 85 76 A9 7B 85 77 A2 |.i..2.`...v.{.w.|
00000B30: 01 A9 00 85 78 A4 78 B9 00 C1 D0 09 C8 B9 00 C1 |....x.x.........|
00000B40: C9 FF F0 01 60 A9 1F 20 A6 31 A9 05 20 A6 31 8A |....`.. .1.. .1.|
00000B50: 20 A6 31 A5 77 20 BB 19 AD 10 C0 20 A6 31 AD 11 | .1.w ..... .1..|
00000B60: C0 20 A6 31 A5 76 20 BB 19 AD 10 C0 20 A6 31 AD |. .1.v ..... .1.|
00000B70: 11 C0 20 A6 31 A9 20 20 A6 31 20 A6 31 A9 00 85 |.. .1. .1 .1...|
00000B80: 79 A4 78 B9 00 C1 C9 FF F0 1A 4C 8D 13 0D 20 BB |y.x.......L... .|
00000B90: 19 AD 10 C0 20 A6 31 AD 11 C0 20 A6 31 E6 78 E6 |.... .1... .1.x.|
00000BA0: 79 4C 80 13 C8 B9 00 C1 C9 FF F0 08 A4 78 B9 00 |yL...........x..|
00000BB0: C1 4C 8D 13 C8 B9 00 C1 C9 FF D0 08 A4 78 B9 00 |.L...........x..|
00000BC0: C1 4C 8D 13 18 A5 76 65 79 85 76 E8 E6 78 E6 78 |.L....vey.v..x.x|
00000BD0: 4C 34 13 A9 01 8D 50 C0 A9 00 8D 13 C0 8D 33 C0 |L4....P.......3.|
00000BE0: A9 34 85 0E A9 C0 85 0F A9 01 8D 28 C0 8D 5A C0 |.4.........(..Z.|
00000BF0: 20 FA 34 A9 5F 85 76 A9 20 85 77 A9 0C 8D 02 C0 | .4._.v. .w.....|
00000C00: A9 1F 20 A6 31 AD 02 C0 18 69 1B 20 A6 31 AD 28 |.. .1....i. .1.(|
00000C10: C0 20 A6 31 A9 87 20 9E 34 8A AE 02 C0 9D 15 C0 |. .1.. .4.......|
00000C20: CE 02 C0 E0 00 D0 D9 BD 15 C0 C9 20 D0 18 E8 E0 |........... ....|
00000C30: 0C D0 F4 EE 50 C0 AD 50 C0 C9 03 F0 03 4C D7 13 |....P..P.....L..|
00000C40: 20 24 39 4C 58 0E 20 18 3A A2 04 BD 15 C0 C9 20 | $9LX. .:...... |
00000C50: F0 03 4C CE 14 E8 E0 0C D0 F1 A0 00 B1 76 C9 FF |..L..........v..|
00000C60: F0 3C D9 15 C0 D0 23 C8 C0 03 D0 F0 B1 76 AE 13 |.<....#......v..|
00000C70: C0 9D 00 7B AE 33 C0 9D 00 C1 A9 FF 9D 01 C1 9D |...{.3..........|
00000C80: 02 C1 A9 01 8D 29 C0 4C 80 17 20 8F 14 4C 59 14 |.....).L.. ..LY.|
00000C90: A5 76 18 69 04 85 76 A5 77 69 00 85 77 60 A9 1F |.v.i..v.wi..w`..|
00000CA0: 20 A6 31 A9 00 20 A6 31 A9 12 20 A6 31 A2 00 BD | .1.. .1.. .1...|
00000CB0: BA 1F 20 10 34 C9 0D F0 03 E8 D0 F3 A2 00 BD 15 |.. .4...........|
00000CC0: C0 20 A6 31 E8 E0 0C D0 F5 20 25 34 4C 4E 0C A9 |. .1..... %4LN..|
00000CD0: C0 85 76 A9 20 85 77 A2 04 BD 15 C0 C9 41 F0 03 |..v. .w......A..|
00000CE0: 4C 24 15 E8 BD 15 C0 C9 20 D0 F5 E0 0C D0 F4 A0 |L$...... .......|
00000CF0: 00 B1 76 C9 FF F0 E9 D9 15 C0 D0 23 C8 C0 03 D0 |..v........#....|
00000D00: F0 B1 76 AE 13 C0 9D 00 7B AE 33 C0 9D 00 C1 A9 |..v.....{.3.....|
00000D10: FF 9D 01 C1 9D 02 C1 A9 01 8D 29 C0 4C 80 17 20 |..........).L.. |
00000D20: 8F 14 4C EE 14 A9 D1 85 76 A9 20 85 77 A2 04 BD |..L.....v. .w...|
00000D30: 15 C0 C9 23 F0 06 4C C2 15 4C 9D 14 A0 00 B1 76 |...#..L..L.....v|
00000D40: C9 FF F0 F5 D9 15 C0 D0 3F C8 C0 03 D0 F0 B1 76 |........?......v|
00000D50: AE 13 C0 9D 00 7B AE 33 C0 9D 00 C1 A9 02 8D 29 |.....{.3.......)|
00000D60: C0 A2 05 BD 15 C0 C9 24 F0 24 A0 05 A2 00 B9 15 |.......$.$......|
00000D70: C0 9D 2B C0 E8 C8 C0 09 D0 F4 20 B6 12 AD 32 C0 |..+....... ...2.|
00000D80: F0 03 4C 9C 17 4C A8 15 20 8F 14 4C 3B 15 A0 06 |..L..L.. ..L;...|
00000D90: A2 00 B9 15 C0 9D 2B C0 E8 C8 E0 04 D0 F4 20 3E |......+....... >|
00000DA0: 0F AD 32 C0 F0 03 4C 9C 17 AD 2A C0 AE 13 C0 9D |..2...L...*.....|
00000DB0: 01 7B AE 33 C0 9D 01 C1 A9 FF 9D 02 C1 9D 03 C1 |.{.3............|
00000DC0: 4C 80 17 A2 03 A9 20 9D 2B C0 CA D0 FA A0 04 B9 |L..... .+.......|
00000DD0: 15 C0 C9 2C F0 13 C9 47 B0 09 C9 28 F0 08 C8 C0 |...,...G...(....|
00000DE0: 0C D0 EC 4C AC 16 4C D0 1A C8 B9 15 C0 C9 58 F0 |...L..L.......X.|
00000DF0: 50 C9 59 F0 03 4C 9D 14 A0 04 B9 15 C0 C9 24 D0 |P.Y..L........$.|
00000E00: 2C A2 00 C8 B9 15 C0 9D 2B C0 E8 C0 07 D0 F4 20 |,.......+...... |
00000E10: 3E 0F AD 32 C0 D0 03 4C 86 16 A9 E5 85 76 A9 21 |>..2...L.....v.!|
00000E20: 85 77 A9 03 8D 29 C0 20 08 17 4C 7D 17 A2 00 B9 |.w...). ..L}....|
00000E30: 15 C0 9D 2B C0 C8 E8 C0 08 D0 F4 20 B6 12 4C 11 |...+....... ..L.|
00000E40: 16 A0 04 B9 15 C0 C9 24 D0 29 A2 00 C8 B9 15 C0 |.......$.)......|
00000E50: 9D 2B C0 E8 C0 07 D0 F4 20 3E 0F AD 32 C0 F0 3A |.+...... >..2..:|
00000E60: A9 A8 85 76 A9 21 85 77 A9 03 8D 29 C0 20 08 17 |...v.!.w...). ..|
00000E70: 4C 7D 17 A2 00 B9 15 C0 9D 2B C0 E8 C8 C0 08 D0 |L}.......+......|
00000E80: F4 20 B6 12 4C 5A 16 A9 4B 85 76 A9 22 85 77 A9 |. ..LZ..K.v.".w.|
00000E90: 02 8D 29 C0 20 08 17 4C 19 16 A9 0A 85 76 A9 22 |..). ..L.....v."|
00000EA0: 85 77 A9 02 8D 29 C0 20 08 17 4C 5F 16 A0 04 B9 |.w...). ..L_....|
00000EB0: 15 C0 A2 00 C9 24 F0 27 B9 15 C0 9D 2B C0 E8 C8 |.....$.'....+...|
00000EC0: C0 08 D0 F4 20 B6 12 AD 32 C0 F0 2A A9 53 85 76 |.... ...2..*.S.v|
00000ED0: A9 21 85 77 A9 03 8D 29 C0 20 08 17 4C 7D 17 C8 |.!.w...). ..L}..|
00000EE0: B9 15 C0 9D 2B C0 E8 C0 07 D0 F4 20 3E 0F AD 32 |....+...... >..2|
00000EF0: C0 F0 03 4C CB 16 A9 FE 85 76 A9 20 85 77 A9 02 |...L.....v. .w..|
00000F00: 8D 29 C0 20 08 17 4C CB 16 A0 00 B1 76 C9 FF F0 |.). ..L.....v...|
00000F10: 50 D9 15 C0 D0 45 C8 C0 03 D0 F0 B1 76 AE 13 C0 |P....E......v...|
00000F20: 9D 00 7B AE 33 C0 9D 00 C1 AD 29 C0 C9 02 F0 32 |..{.3.....)....2|
00000F30: AE 13 C0 AD 2A C0 9D 01 7B AE 33 C0 9D 01 C1 AE |....*...{.3.....|
00000F40: 13 C0 AD 32 C0 9D 02 7B AE 33 C0 9D 02 C1 A9 FF |...2...{.3......|
00000F50: 9D 03 C1 9D 04 C1 68 68 4C 80 17 20 8F 14 4C 08 |......hhL.. ..L.|
00000F60: 17 60 AE 13 C0 AD 2A C0 9D 01 7B AE 33 C0 9D 01 |.`....*...{.3...|
00000F70: C1 A9 FF 9D 02 C1 9D 03 C1 68 68 4C 80 17 4C 73 |.........hhL..Ls|
00000F80: 1B AD 13 C0 18 6D 29 C0 8D 13 C0 EE 28 C0 18 AD |.....m).....(...|
00000F90: 33 C0 6D 29 C0 69 02 8D 33 C0 4C EF 13 A9 1F 20 |3.m).i..3.L.... |
00000FA0: A6 31 A9 00 20 A6 31 A9 12 20 A6 31 A2 00 BD DF |.1.. .1.. .1....|
00000FB0: 1F 20 10 34 C9 0D F0 03 E8 D0 F3 4C BB 14 AD 12 |. .4.......L....|
00000FC0: C0 C9 01 F0 06 A9 01 8D 12 C0 60 A9 02 8D 12 C0 |..........`.....|
00000FD0: 60 A9 20 20 A6 31 CA D0 FA 60 A9 1F 20 A6 31 A9 |`. .1...`.. .1.|
00000FE0: 04 20 A6 31 A9 16 20 A6 31 AD 07 C0 20 EA 19 A9 |. .1.. .1... ...|
00000FF0: 02 8D 6B C0 20 BE 1A A9 1F 20 A6 31 A9 13 20 A6 |..k. .... .1.. .|
00001000: 31 A9 16 20 A6 31 AD 04 C0 20 EA 19 A9 06 8D 6B |1.. .1... .....k|
00001010: C0 20 BE 1A A9 1F 20 A6 31 A9 21 20 A6 31 A9 16 |. .... .1.! .1..|
00001020: 20 A6 31 AD 05 C0 20 EA 19 A9 05 8D 6B C0 20 BE | .1... .....k. .|
00001030: 1A A9 1F 20 A6 31 A9 09 20 A6 31 A9 18 20 A6 31 |... .1.. .1.. .1|
00001040: A9 04 8D 6B C0 AD 06 C0 2A A9 00 69 30 20 A6 31 |...k....*..i0 .1|
00001050: A2 03 20 D0 17 AD 06 C0 6A 6A A9 00 69 30 20 A6 |.. .....jj..i0 .|
00001060: 31 A2 04 20 D0 17 AD 06 C0 6A 6A 6A 6A A9 30 69 |1.. .....jjjj.0i|
00001070: 00 20 A6 31 A2 03 20 D0 17 AD 06 C0 2A 2A A9 00 |. .1.. .....**..|
00001080: 69 30 20 A6 31 A2 04 20 D0 17 AD 06 C0 6A A9 00 |i0 .1.. .....j..|
00001090: 69 30 20 A6 31 A2 08 20 D0 17 AD 06 C0 6A 6A 6A |i0 .1.. .....jjj|
000010A0: A9 00 69 30 20 A6 31 60 AD 0A C0 C9 02 F0 03 4C |..i0 .1`.......L|
000010B0: D9 17 A9 1F 20 A6 31 A9 0E 20 A6 31 A9 01 20 A6 |.... .1.. .1.. .|
000010C0: 31 AD 07 C0 20 EA 19 20 BE 1A A9 1F 20 A6 31 A9 |1... .. .... .1.|
000010D0: 0E 20 A6 31 A9 03 20 A6 31 AD 04 C0 20 EA 19 20 |. .1.. .1... .. |
000010E0: BE 1A A9 1F 20 A6 31 A9 0E 20 A6 31 A9 05 20 A6 |.... .1.. .1.. .|
000010F0: 31 AD 05 C0 20 EA 19 20 BE 1A A9 1F 20 A6 31 A9 |1... .. .... .1.|
00001100: 0E 20 A6 31 A9 07 20 A6 31 AD 06 C0 29 01 18 69 |. .1.. .1...)..i|
00001110: 30 20 A6 31 A9 1F 20 A6 31 A9 0E 20 A6 31 A9 08 |0 .1.. .1.. .1..|
00001120: 20 A6 31 A9 08 2C 06 C0 F0 08 A9 31 20 A6 31 4C | .1..,.....1 .1L|
00001130: 36 19 A9 30 20 A6 31 A9 1F 20 A6 31 A9 0E 20 A6 |6..0 .1.. .1.. .|
00001140: 31 A9 09 20 A6 31 AD 06 C0 6A 6A 6A A9 00 69 30 |1.. .1...jjj..i0|
00001150: 20 A6 31 A9 1F 20 A6 31 A9 0E 20 A6 31 A9 0A 20 | .1.. .1.. .1.. |
00001160: A6 31 AD 06 C0 6A 6A A9 00 69 30 20 A6 31 A9 1F |.1...jj..i0 .1..|
00001170: 20 A6 31 A9 0E 20 A6 31 A9 0B 20 A6 31 AD 06 C0 | .1.. .1.. .1...|
00001180: 2A A9 00 69 30 20 A6 31 A9 1F 20 A6 31 A9 0E 20 |*..i0 .1.. .1.. |
00001190: A6 31 A9 0C 20 A6 31 AD 06 C0 2A 2A A9 00 69 30 |.1.. .1...**..i0|
000011A0: 20 A6 31 60 AD 0B C0 20 BB 19 A9 24 8D 0C C0 AD | .1`... ...$....|
000011B0: 10 C0 8D 0D C0 AD 11 C0 8D 0E C0 60 8D 0B C0 4A |...........`...J|
000011C0: 4A 4A 4A C9 0A 90 09 18 69 37 8D 10 C0 4C D4 19 |JJJ.....i7...L..|
000011D0: 69 30 8D 10 C0 AD 0B C0 29 0F C9 0A 90 07 18 69 |i0......)......i|
000011E0: 37 8D 11 C0 60 69 30 8D 11 C0 60 8D 0B C0 AD 12 |7...`i0...`.....|
000011F0: C0 C9 02 F0 03 4C A3 19 A9 30 8D 0C C0 8D 0D C0 |.....L...0......|
00001200: 8D 0E C0 AD 0B C0 38 E9 64 EE 0C C0 B0 F8 CE 0C |......8.d.......|
00001210: C0 18 69 64 38 E9 0A EE 0D C0 B0 F8 CE 0D C0 18 |..id8...........|
00001220: 69 0A 38 E9 01 EE 0E C0 B0 F8 CE 0E C0 60 A9 1F |i.8..........`..|
00001230: 20 A6 31 A9 00 20 A6 31 A9 15 20 A6 31 A2 A0 A9 | .1.. .1.. .1...|
00001240: 20 20 A6 31 CA D0 FA 60 AD 0A C0 C9 01 F0 1D A2 | .1...`........|
00001250: 01 A9 1F 20 A6 31 A9 11 20 A6 31 8A 20 A6 31 A9 |... .1.. .1. .1.|
00001260: 9C 20 A6 31 E8 E0 12 D0 E8 4C 88 1A A2 01 A9 1F |. .1.....L......|
00001270: 20 A6 31 A9 00 20 A6 31 8A 20 A6 31 A9 9C 20 A6 | .1.. .1. .1.. .|
00001280: 31 E8 E0 12 D0 E8 4C A3 1A A9 1F 20 A6 31 A9 11 |1.....L.... .1..|
00001290: 20 A6 31 AD 09 C0 20 A6 31 A9 89 20 A6 31 A9 9D | .1... .1.. .1..|
000012A0: 20 A6 31 60 A9 1F 20 A6 31 A9 00 20 A6 31 AD 09 | .1`.. .1.. .1..|
000012B0: C0 20 A6 31 A9 89 20 A6 31 A9 9D 20 A6 31 60 AD |. .1.. .1.. .1`.|
000012C0: 0C C0 20 A6 31 AD 0D C0 20 A6 31 AD 0E C0 4C A6 |.. .1... .1...L.|
000012D0: 31 A2 04 BD 15 C0 C9 28 F0 03 4C 9D 14 E8 BD 15 |1......(..L.....|
000012E0: C0 C9 24 F0 03 4C FB 1A A0 00 E8 BD 15 C0 99 2B |..$..L.........+|
000012F0: C0 C8 C0 04 D0 F4 20 3E 0F 4C 0C 1B A0 00 BD 15 |...... >.L......|
00001300: C0 99 2B C0 C8 E8 C0 04 D0 F4 20 B6 12 A2 06 BD |..+....... .....|
00001310: 15 C0 C9 20 F0 0D C9 29 F0 3B C9 2C F0 08 E8 E0 |... ...).;.,....|
00001320: 09 D0 EC 4C 9D 14 BD 16 C0 C9 58 F0 03 4C 9D 14 |...L......X..L..|
00001330: BD 17 C0 C9 29 F0 03 4C 9D 14 A9 54 85 76 A9 22 |....)..L...T.v."|
00001340: 85 77 A9 02 8D 29 C0 AD 32 C0 D0 06 20 08 17 4C |.w...)..2... ..L|
00001350: 9D 14 4C 9C 17 BD 16 C0 C9 2C F0 03 4C 9D 14 BD |..L......,..L...|
00001360: 17 C0 C9 59 F0 03 4C 9D 14 A9 75 85 76 A9 22 85 |...Y..L...u.v.".|
00001370: 77 4C 41 1B A9 9F 85 76 A9 22 85 77 A0 00 B1 76 |wLA....v.".w...v|
00001380: C9 FF F0 30 D9 15 C0 D0 25 C8 C0 03 D0 F0 AE 13 |...0....%.......|
00001390: C0 B1 76 9D 00 7B AE 33 C0 9D 00 C1 A9 02 8D 29 |..v..{.3.......)|
000013A0: C0 AD 50 C0 C9 02 D0 0F 20 0F 1C 4C 80 17 20 8F |..P..... ..L.. .|
000013B0: 14 4C 7B 1B 4C C1 1B A9 FF 9D 02 C1 9D 03 C1 4C |.L{.L..........L|
000013C0: 80 17 A9 96 85 76 A9 22 85 77 A0 00 B1 76 C9 FF |.....v.".w...v..|
000013D0: F0 0D D9 15 C0 D0 0B C8 C0 03 D0 F0 4C E7 1B 4C |............L..L|
000013E0: 9D 14 20 8F 14 4C C9 1B B1 76 AE 13 C0 9D 00 7B |.. ..L...v.....{|
000013F0: AE 33 C0 9D 00 C1 A9 FF 9D 03 C1 9D 04 C1 A9 03 |.3..............|
00001400: 8D 29 C0 AD 50 C0 C9 02 D0 03 20 0F 1C 4C 80 17 |.)..P..... ..L..|
00001410: AD 29 C0 C9 02 F0 1E AE 13 C0 A9 7B 9D 02 7B AE |.).........{..{.|
00001420: 33 C0 9D 02 C1 20 4B 1C AE 33 C0 9D 01 C1 AE 13 |3.... K..3......|
00001430: C0 9D 01 7B 60 20 4B 1C 38 E9 02 38 ED 13 C0 AE |...{` K.8..8....|
00001440: 13 C0 9D 01 7B AE 33 C0 9D 01 C1 60 A9 01 8D 02 |....{.3....`....|
00001450: C0 A2 14 A9 1F 20 A6 31 8A 20 A6 31 AD 02 C0 20 |..... .1. .1... |
00001460: A6 31 A9 87 8E 0B C0 20 9E 34 8E 14 C0 AD 0B C0 |.1..... .4......|
00001470: 38 E9 14 AA AD 14 C0 9D 51 C0 AE 0B C0 EE 0B C0 |8.......Q.......|
00001480: E8 E0 1A D0 CE A9 1F 20 A6 31 A9 1B 20 A6 31 AD |....... .1.. .1.|
00001490: 02 C0 20 A6 31 A9 87 20 9E 34 E0 20 F0 25 A2 00 |.. .1.. .4. .%..|
000014A0: A0 04 BD 51 C0 D9 15 C0 D0 0C E8 C8 E0 06 D0 F2 |...Q............|
000014B0: AC 02 C0 B1 0E 60 AD 02 C0 C9 10 F0 06 EE 02 C0 |.....`..........|
000014C0: 4C 50 1C A2 00 A9 1F 20 A6 31 A9 00 20 A6 31 A9 |LP..... .1.. .1.|
000014D0: 12 20 A6 31 BD FF 1F C9 0D F0 0A 20 10 34 E8 D0 |. .1....... .4..|
000014E0: F3 68 68 68 68 4C BB 14 23 24 2C 28 29 1F 00 01 |.hhhhL..#$,()...|
000014F0: 41 43 43 55 4D 55 4C 41 54 4F 52 20 20 3A 30 30 |ACCUMULATOR :00|
00001500: 30 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 |0.. |
00001510: 20 20 20 20 0D 0A 58 20 2D 20 52 45 47 49 53 54 | ..X - REGIST|
00001520: 45 52 20 3A 30 30 30 0D 0A 20 20 20 20 20 20 20 |ER :000.. |
00001530: 20 20 20 20 20 20 20 20 20 20 0D 0A 59 20 2D 20 | ..Y - |
00001540: 52 45 47 49 53 54 45 52 20 3A 30 30 30 0D 0A 20 |REGISTER :000.. |
00001550: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00001560: 0D 0A 43 41 52 52 59 20 46 4C 41 47 20 20 20 3A |..CARRY FLAG :|
00001570: 30 20 20 0D 0A 44 45 43 49 4D 41 4C 20 4D 4F 44 |0 ..DECIMAL MOD|
00001580: 45 20 3A 30 20 20 0D 0A 49 4E 54 45 52 52 55 50 |E :0 ..INTERRUP|
00001590: 54 53 20 20 20 3A 30 20 20 0D 0A 5A 45 52 4F 20 |TS :0 ..ZERO |
000015A0: 46 4C 41 47 20 20 20 20 3A 30 20 20 0D 0A 4E 45 |FLAG :0 ..NE|
000015B0: 47 41 54 49 56 45 20 46 4C 41 47 3A 30 20 20 0D |GATIVE FLAG:0 .|
000015C0: 0A 4F 56 45 52 46 4C 4F 57 20 46 4C 41 47 3A 30 |.OVERFLOW FLAG:0|
000015D0: 20 20 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 | .. |
000015E0: 20 20 20 20 20 0D 0A 81 66 33 2F 66 37 20 46 4F | ...f3/f7 FO|
000015F0: 52 20 4D 4F 44 45 53 0D 0A 84 27 52 45 54 55 52 |R MODES...'RETUR|
00001600: 4E 27 20 54 4F 20 52 55 4E 20 20 0D 0A 82 27 5F |N' TO RUN ...'_|
00001610: 27 20 54 4F 20 45 44 49 54 20 20 20 20 0D 0A FF |' TO EDIT ...|
00001620: 1F 11 00 82 9D 87 4C 41 42 45 4C 53 20 49 4E 53 |......LABELS INS|
00001630: 54 52 55 43 54 49 4F 4E 53 0D 0A 9C 0D 0A 50 52 |TRUCTIONS.....PR|
00001640: 45 53 53 20 4B 45 59 53 3A 9C 0D 0A 9C 0A 81 9D |ESS KEYS:.......|
00001650: 87 20 66 31 20 20 20 9C 0D 0A 61 73 73 65 6D 62 |. f1 ...assemb|
00001660: 6C 65 73 20 70 72 6F 67 72 61 6D 9C 0D 0A 9C 0A |les program.....|
00001670: 81 9D 87 20 66 33 20 20 20 9C 0D 0A 66 6F 72 20 |... f3 ...for |
00001680: 6D 61 69 6E 20 6D 65 6E 75 9C 0D 0A 9C 0A 81 9D |main menu.......|
00001690: 87 20 66 35 20 20 20 9C 0D 0A 74 6F 20 65 72 61 |. f5 ...to era|
000016A0: 73 65 20 70 72 6F 67 72 61 6D 9C 0D 0A 9C 0A 9C |se program......|
000016B0: 0A 9C 0A 9C 0A 9C 1F 00 12 20 84 9D 87 45 44 49 |......... ...EDI|
000016C0: 54 20 4D 4F 44 45 20 20 9C 8C 0D 0A 20 84 9D 87 |T MODE .... ...|
000016D0: 2A 2A 2A 2A 2A 2A 2A 2A 2A 20 20 9C 8C 0D 0A 0A |********* .....|
000016E0: 54 79 70 65 20 69 6E 20 70 72 6F 67 72 61 6D 2C |Type in program,|
000016F0: 20 75 73 69 6E 67 20 74 68 65 20 63 75 72 73 6F | using the curso|
00001700: 72 20 6B 65 79 73 0D 0A 74 6F 20 65 64 69 74 20 |r keys..to edit |
00001710: 70 72 6F 67 72 61 6D 2E 9C 0D 0A 9C FF 41 43 43 |program......ACC|
00001720: 55 4D 55 4C 41 54 4F 52 20 20 20 20 58 2D 52 45 |UMULATOR X-RE|
00001730: 47 49 53 54 45 52 20 20 20 20 59 2D 52 45 47 49 |GISTER Y-REGI|
00001740: 53 54 45 52 20 20 81 9D 87 30 30 30 20 20 87 9C |STER ...000 ..|
00001750: 20 20 20 20 20 84 9D 87 30 30 30 20 20 87 9C 20 | ...000 .. |
00001760: 20 20 20 82 9D 87 30 30 30 20 20 87 9C 20 20 20 | ...000 .. |
00001770: 20 20 20 20 20 4E 45 47 20 5A 45 52 4F 20 44 45 | NEG ZERO DE|
00001780: 43 20 4F 2F 46 20 43 41 52 52 59 20 49 2F 44 49 |C O/F CARRY I/DI|
00001790: 53 41 42 4C 45 46 4C 41 47 53 3A 85 9D 87 30 20 |SABLEFLAGS:...0 |
000017A0: 20 20 30 20 20 20 20 30 20 20 20 30 20 20 20 20 | 0 0 0 |
000017B0: 30 20 20 20 20 20 20 20 20 30 FF 45 52 52 4F 52 |0 0.ERROR|
000017C0: 20 2D 20 49 4E 53 54 52 55 43 54 49 4F 4E 20 4E | - INSTRUCTION N|
000017D0: 4F 54 20 52 45 43 4F 47 4E 49 53 45 44 20 3A 0D |OT RECOGNISED :.|
000017E0: 45 52 52 4F 52 20 2D 20 4E 55 4D 42 45 52 20 42 |ERROR - NUMBER B|
000017F0: 49 47 47 45 52 20 54 48 41 4E 20 32 35 35 3A 0D |IGGER THAN 255:.|
00001800: 45 52 52 4F 52 20 2D 20 4C 41 42 45 4C 20 4E 4F |ERROR - LABEL NO|
00001810: 54 20 46 4F 55 4E 44 20 3A 20 0D 45 52 52 4F 52 |T FOUND : .ERROR|
00001820: 20 2D 20 52 45 53 55 4C 54 49 4E 47 20 41 44 44 | - RESULTING ADD|
00001830: 52 45 53 53 20 47 52 45 41 54 45 52 20 54 48 41 |RESS GREATER THA|
00001840: 4E 0D 0A 31 30 32 34 20 28 44 45 43 49 4D 41 4C |N..1024 (DECIMAL|
00001850: 29 20 4F 52 20 24 34 30 30 20 28 48 45 58 29 FF |) OR $400 (HEX).|
00001860: 42 52 4B 00 43 4C 43 18 43 4C 44 D8 43 4C 49 58 |BRK.CLC.CLD.CLIX|
00001870: 43 4C 56 B8 44 45 58 CA 44 45 59 88 49 4E 58 E8 |CLV.DEX.DEY.INX.|
00001880: 49 4E 59 C8 4E 4F 50 EA 50 48 41 48 50 48 50 08 |INY.NOP.PHAHPHP.|
00001890: 50 4C 41 68 50 4C 50 28 52 54 53 60 53 45 43 38 |PLAhPLP(RTS`SEC8|
000018A0: 53 45 44 F8 53 45 49 78 54 41 58 AA 54 41 59 A8 |SED.SEIxTAX.TAY.|
000018B0: 54 53 58 BA 54 58 41 8A 54 58 53 9A 54 59 41 98 |TSX.TXA.TXS.TYA.|
000018C0: FF 41 53 4C 0A 4C 53 52 4A 52 4F 4C 2A 52 4F 52 |.ASL.LSRJROL*ROR|
000018D0: 6A FF 41 44 43 69 41 4E 44 29 43 4D 50 C9 43 50 |j.ADCiAND)CMP.CP|
000018E0: 58 E0 43 50 59 C0 45 4F 52 49 4C 44 41 A9 4C 44 |X.CPY.EORILDA.LD|
000018F0: 58 A2 4C 44 59 A0 4F 52 41 09 53 42 43 E9 FF 41 |X.LDY.ORA.SBC..A|
00001900: 44 43 65 41 4E 44 25 41 53 4C 06 42 49 54 24 43 |DCeAND%ASL.BIT$C|
00001910: 4D 50 C5 43 50 58 E4 43 50 59 C4 44 45 43 C6 45 |MP.CPX.CPY.DEC.E|
00001920: 4F 52 45 49 4E 43 E6 4C 44 41 A5 4C 44 58 A6 4C |OREINC.LDA.LDX.L|
00001930: 44 59 A4 4C 53 52 46 4F 52 41 05 52 4F 4C 26 52 |DY.LSRFORA.ROL&R|
00001940: 4F 52 66 53 42 43 E5 53 54 41 85 53 54 58 86 53 |ORfSBC.STA.STX.S|
00001950: 54 59 84 FF 41 44 43 6D 41 4E 44 2D 41 53 4C 0E |TY..ADCmAND-ASL.|
00001960: 42 49 54 2C 43 4D 50 CD 43 50 58 EC 43 50 59 CC |BIT,CMP.CPX.CPY.|
00001970: 45 4F 52 4D 49 4E 43 EE 4C 44 41 AD 4C 44 58 AE |EORMINC.LDA.LDX.|
00001980: 4C 44 59 AC 4C 53 52 4E 4F 52 41 0D 52 4F 4C 2E |LDY.LSRNORA.ROL.|
00001990: 52 4F 52 6E 53 42 43 ED 53 54 41 8D 53 54 58 8E |RORnSBC.STA.STX.|
000019A0: 53 54 59 8C 44 45 43 CE FF 41 44 43 7D 41 4E 44 |STY.DEC..ADC}AND|
000019B0: 3D 41 53 4C 1E 43 4D 50 DD 44 45 43 DE 45 4F 52 |=ASL.CMP.DEC.EOR|
000019C0: 5D 49 4E 43 FE 4C 44 41 BD 4C 44 59 BC 4C 53 52 |]INC.LDA.LDY.LSR|
000019D0: 5E 4F 52 41 1D 52 4F 4C 3E 52 4F 52 7E 53 42 43 |^ORA.ROL>ROR~SBC|
000019E0: FD 53 54 41 9D FF 41 44 43 79 41 4E 44 39 43 4D |.STA..ADCyAND9CM|
000019F0: 50 D9 45 4F 52 59 4C 44 41 B9 4C 44 58 BE 4F 52 |P.EORYLDA.LDX.OR|
00001A00: 41 19 53 42 43 F9 53 54 41 99 FF 41 44 43 75 41 |A.SBC.STA..ADCuA|
00001A10: 4E 44 35 41 53 4C 16 43 4D 50 D5 44 45 43 D6 45 |ND5ASL.CMP.DEC.E|
00001A20: 4F 52 55 49 4E 43 F6 4C 44 41 B5 4C 44 59 B4 4C |ORUINC.LDA.LDY.L|
00001A30: 53 52 56 4F 52 41 15 52 4F 4C 36 52 4F 52 76 53 |SRVORA.ROL6RORvS|
00001A40: 42 43 F5 53 54 41 95 53 54 59 94 FF 4C 44 58 B6 |BC.STA.STY..LDX.|
00001A50: 53 54 58 96 FF 41 44 43 61 41 4E 44 21 43 4D 50 |STX..ADCaAND!CMP|
00001A60: C1 45 4F 52 41 4C 44 41 A1 4F 52 41 01 53 42 43 |.EORALDA.ORA.SBC|
00001A70: E1 53 54 41 81 FF 41 44 43 71 41 4E 44 31 43 4D |.STA..ADCqAND1CM|
00001A80: 50 D1 45 4F 52 51 4C 44 41 B1 4F 52 41 11 53 42 |P.EORQLDA.ORA.SB|
00001A90: 43 F1 53 54 41 91 FF 4A 4D 50 4C 4A 53 52 20 FF |C.STA..JMPLJSR .|
00001AA0: 42 43 43 90 42 43 53 B0 42 45 51 F0 42 4D 49 30 |BCC.BCS.BEQ.BMI0|
00001AB0: 42 4E 45 D0 42 50 4C 10 42 56 43 50 42 56 53 70 |BNE.BPL.BVCPBVSp|
00001AC0: FF A9 1F 20 A6 31 A9 00 20 A6 31 A9 12 20 A6 31 |... .1.. .1.. .1|
00001AD0: A9 50 8D 02 C0 A9 20 20 A6 31 CE 02 C0 AD 02 C0 |.P.... .1......|
00001AE0: D0 F3 60 A9 A6 85 14 A9 28 85 15 20 C0 22 A9 1F |..`.....(.. ."..|
00001AF0: 20 A6 31 A9 00 20 A6 31 A9 12 20 A6 31 AC 09 C0 | .1.. .1.. .1...|
00001B00: B1 0E AA 8D 5D C0 BD 00 7B 8D 5C C0 AA E0 00 F0 |....]...{.\.....|
00001B10: 11 18 A5 14 69 09 85 14 A5 15 69 00 85 15 CA 4C |....i.....i....L|
00001B20: 0C 23 A0 00 B1 14 85 10 C8 B1 14 85 11 C8 B1 14 |.#..............|
00001B30: 85 12 C8 B1 14 85 13 20 7D 23 C8 B1 14 85 12 C8 |....... }#......|
00001B40: B1 14 85 13 20 7D 23 C8 B1 14 85 12 C8 B1 14 85 |.... }#.........|
00001B50: 13 20 7D 23 C8 B1 14 8D 5B C0 20 A7 23 A2 00 BD |. }#....[. .#...|
00001B60: 07 27 C9 FF F0 08 CD 5B C0 F0 0F E8 D0 F1 A5 19 |.'.....[........|
00001B70: C9 0C 90 03 4C E1 26 20 57 28 60 6C 10 00 8C 02 |....L.& W(`l....|
00001B80: C0 A0 00 B1 12 C9 FF F0 06 20 10 34 C8 D0 F4 AC |......... .4....|
00001B90: 02 C0 60 20 C0 22 68 68 4C 4E 0C A0 00 AD 07 C0 |..` ."hhLN......|
00001BA0: 11 18 8D 07 C0 4C B5 26 C9 01 D0 01 60 C9 02 D0 |.....L.&....`...|
00001BB0: 09 A9 07 85 18 A9 C0 85 19 60 C9 03 D0 11 AE 5D |.........`.....]|
00001BC0: C0 BD 01 7B 85 18 BD 02 7B 18 69 08 85 19 60 C9 |...{....{.i...`.|
00001BD0: 04 D0 0D AE 5D C0 A9 08 85 19 BD 01 7B 85 18 60 |....].......{..`|
00001BE0: C9 05 D0 12 A9 5E 85 18 A9 C0 85 19 AE 5D C0 BD |.....^.......]..|
00001BF0: 01 7B 8D 5E C0 60 C9 06 D0 12 20 BD 23 18 A5 18 |.{.^.`.... .#...|
00001C00: 6D 04 C0 85 18 A5 19 69 00 85 19 60 C9 07 D0 0E |m......i...`....|
00001C10: 20 BD 23 18 A5 18 6D 05 C0 85 18 4C 04 24 C9 08 | .#...m....L.$..|
00001C20: D0 2B A9 08 85 19 AE 5D C0 BD 01 7B 85 18 A0 00 |.+.....]...{....|
00001C30: B1 18 8D 0B C0 C8 B1 18 18 69 08 85 19 AD 0B C0 |.........i......|
00001C40: 18 6D 05 C0 85 18 A5 19 69 00 85 19 60 C9 09 D0 |.m......i...`...|
00001C50: 25 A9 08 85 19 AE 5D C0 BD 01 7B 18 6D 04 C0 85 |%.....]...{.m...|
00001C60: 18 A0 00 B1 18 8D 0B C0 C8 B1 18 18 69 08 85 19 |............i...|
00001C70: AD 0B C0 85 18 60 C9 0A D0 13 AE 5D C0 BD 01 7B |.....`.....]...{|
00001C80: 18 6D 04 C0 85 18 A9 08 69 00 85 19 60 C9 0B D0 |.m......i...`...|
00001C90: 0D AE 5D C0 BD 01 7B 18 6D 05 C0 4C 83 24 C9 0C |..]...{.m..L.$..|
00001CA0: D0 1D AE 5D C0 BD 01 7B 8D 02 C0 A0 01 B1 0E CD |...]...{........|
00001CB0: 02 C0 F0 08 C8 C0 11 D0 F4 4C 20 28 84 18 60 C9 |.........L (..`.|
00001CC0: 0D D0 1D AE 5D C0 BD 01 7B 8D 02 C0 18 69 02 8D |....]...{....i..|
00001CD0: 02 C0 18 AC 09 C0 71 0E 8D 02 C0 A0 01 4C AC 24 |......q......L.$|
00001CE0: 60 A0 00 AD 06 C0 29 6C 8D 06 C0 A0 00 B1 18 8D |`.....)l........|
00001CF0: 5E C0 0E 5E C0 08 AD 5E C0 91 18 68 29 83 0D 06 |^..^...^...h)...|
00001D00: C0 8D 06 C0 60 AD 06 C0 AE 0F C0 9D 00 09 CE 0F |....`...........|
00001D10: C0 60 EE 0F C0 AE 0F C0 BD 00 09 8D 06 C0 60 AD |.`............`.|
00001D20: 07 C0 AE 0F C0 9D 00 09 CE 0F C0 60 EE 0F C0 AE |...........`....|
00001D30: 0F C0 BD 00 09 8D 07 C0 4C B5 26 20 25 34 68 68 |........L.& %4hh|
00001D40: 4C 4E 0C A0 00 B1 18 8D 07 C0 4C B5 26 AD 07 C0 |LN........L.&...|
00001D50: A0 00 91 18 60 A0 00 B1 18 8D 04 C0 4C B5 26 A0 |....`.......L.&.|
00001D60: 00 AD 04 C0 91 18 60 A0 00 B1 18 8D 05 C0 4C B5 |......`.......L.|
00001D70: 26 A0 00 AD 05 C0 91 18 60 AE 5D C0 A0 00 B1 18 |&.......`.].....|
00001D80: 2D 07 C0 8D 07 C0 4C B5 26 AD 06 C0 29 FE 8D 06 |-.....L.&...)...|
00001D90: C0 60 AD 06 C0 09 01 8D 06 C0 60 A0 00 B1 18 4A |.`........`....J|
00001DA0: 91 18 08 AD 06 C0 29 4C 8D 06 C0 68 29 03 0D 06 |......)L...h)...|
00001DB0: C0 8D 06 C0 60 A0 00 B1 18 4D 07 C0 8D 07 C0 4C |....`....M.....L|
00001DC0: B5 26 A0 00 AD 06 C0 29 01 48 28 B1 18 2A 91 18 |.&.....).H(..*..|
00001DD0: 08 AD 06 C0 29 4C 8D 06 C0 68 29 83 0D 06 C0 8D |....)L...h).....|
00001DE0: 06 C0 60 A0 00 B1 18 8D 5E C0 AD 07 C0 2C 5E C0 |..`.....^....,^.|
00001DF0: 08 AD 06 C0 29 0D 8D 06 C0 68 29 C2 0D 06 C0 8D |....)....h).....|
00001E00: 06 C0 60 A5 18 38 E9 01 8D 09 C0 60 EE 0F C0 AE |..`..8.....`....|
00001E10: 0F C0 BD 00 09 18 69 01 8D 02 C0 EE 0F C0 E8 BD |......i.........|
00001E20: 00 09 C9 7B F0 03 4C 20 28 A0 01 B1 0E CD 02 C0 |...{..L (.......|
00001E30: F0 08 C8 C0 11 D0 F4 4C 20 28 84 18 4C 02 26 A9 |.......L (..L.&.|
00001E40: 7B AE 0F C0 9D 00 09 CE 0F C0 AD 5D C0 18 69 02 |{..........]..i.|
00001E50: AE 0F C0 9D 00 09 CE 0F C0 4C 02 26 AD 06 C0 29 |.........L.&...)|
00001E60: FB 8D 06 C0 60 AD 06 C0 29 09 48 28 A0 00 AD 06 |....`...).H(....|
00001E70: C0 29 0C 8D 06 C0 AD 07 C0 71 18 8D 07 C0 08 68 |.).......q.....h|
00001E80: 29 C3 0D 06 C0 8D 06 C0 60 AD 06 C0 29 01 48 28 |).......`...).H(|
00001E90: A0 00 AD 06 C0 29 0C 8D 06 C0 B1 18 6A 91 18 08 |.....)......j...|
00001EA0: 68 29 C3 0D 06 C0 8D 06 C0 60 CE 05 C0 4C B5 26 |h).......`...L.&|
00001EB0: AD 04 C0 8D 07 C0 08 AD 06 C0 29 4D 8D 06 C0 68 |..........)M...h|
00001EC0: 29 82 0D 06 C0 8D 06 C0 60 AD 05 C0 8D 07 C0 4C |).......`......L|
00001ED0: B5 26 AD 04 C0 8D 0F C0 60 AD 06 C0 09 04 8D 06 |.&......`.......|
00001EE0: C0 60 A2 00 A9 1F 20 A6 31 A9 00 20 A6 31 A9 12 |.`.... .1.. .1..|
00001EF0: 20 A6 31 BD 1A 20 C9 FF F0 06 20 A6 31 E8 D0 F3 | .1.. .... .1...|
00001F00: 20 25 34 68 68 4C 4E 0C 01 02 05 0C 0D FF 60 AD | %4hhLN.......`.|
00001F10: 06 C0 09 08 8D 06 C0 60 EE 05 C0 4C B5 26 CE 04 |.......`...L.&..|
00001F20: C0 4C B5 26 A0 00 B1 18 8D 5E C0 CE 5E C0 AD 5E |.L.&.....^..^..^|
00001F30: C0 91 18 4C B5 26 EE 04 C0 4C B5 26 AD 06 C0 29 |...L.&...L.&...)|
00001F40: 09 48 28 AD 06 C0 29 0C 8D 06 C0 AD 07 C0 A0 00 |.H(...).........|
00001F50: F1 18 8D 07 C0 08 68 29 C3 0D 06 C0 8D 06 C0 60 |......h).......`|
00001F60: AD 06 C0 29 0C 8D 06 C0 AD 04 C0 A0 00 38 F1 18 |...).........8..|
00001F70: 08 68 29 C3 0D 06 C0 8D 06 C0 60 AD 06 C0 29 0C |.h).......`...).|
00001F80: 8D 06 C0 AD 05 C0 4C 6A 27 AD 06 C0 29 0C 8D 06 |......Lj'...)...|
00001F90: C0 AD 07 C0 4C 6A 27 AD 07 C0 8D 05 C0 4C B5 26 |....Lj'......L.&|
00001FA0: AD 07 C0 8D 04 C0 4C B5 26 AD 0F C0 8D 04 C0 4C |......L.&......L|
00001FB0: B5 26 AD 06 C0 29 F7 8D 06 C0 60 A0 00 B1 18 8D |.&...)....`.....|
00001FC0: 5E C0 EE 5E C0 AD 5E C0 91 18 4C B5 26 AD 06 C0 |^..^..^...L.&...|
00001FD0: 29 BF 8D 06 C0 60 AD 06 C0 29 02 F0 03 4C E7 27 |)....`...)...L.'|
00001FE0: 60 AD 06 C0 29 02 D0 F8 A5 18 8D 09 C0 CE 09 C0 |`...)...........|
00001FF0: 60 AD 06 C0 29 40 F0 F0 60 AD 06 C0 29 01 D0 E8 |`...)@..`...)...|
00002000: 60 AD 06 C0 29 80 D0 E0 60 AD 06 C0 29 80 F0 D8 |`...)...`...)...|
00002010: 60 AD 06 C0 29 01 F0 D0 60 AD 06 C0 29 40 D0 C8 |`...)...`...)@..|
00002020: 60 A2 00 BD 38 28 C9 FF F0 07 20 A6 31 E8 4C 22 |`...8(.... .1.L"|
00002030: 28 20 25 34 68 68 4C 4E 0C 1F 00 12 45 52 52 4F |( %4hhLN....ERRO|
00002040: 52 20 2D 20 41 44 44 52 45 53 53 20 4E 4F 54 20 |R - ADDRESS NOT |
00002050: 46 4F 55 4E 44 0D 0A FF A2 00 AD 12 C0 C9 01 F0 |FOUND...........|
00002060: 01 60 BD 8E 28 C9 FF F0 06 20 A6 31 E8 D0 F3 38 |.`..(.... .1...8|
00002070: A5 19 E9 08 20 BB 19 AD 11 C0 20 A6 31 A5 18 20 |.... ..... .1.. |
00002080: BB 19 AD 10 C0 20 A6 31 AD 11 C0 20 A6 31 60 1F |..... .1... .1`.|
00002090: 0F 13 52 45 53 55 4C 54 49 4E 47 20 41 44 44 52 |..RESULTING ADDR|
000020A0: 45 53 53 20 24 FF FF 92 23 3F 36 7B 36 A5 28 01 |ESS $...#?6{6.(.|
000020B0: 9A 23 BC 35 97 35 30 37 09 3A 25 5B 36 7B 36 A5 |.#.5.507.:%[6{6.|
000020C0: 28 00 3A 25 5B 36 7B 36 A5 28 00 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
000020D0: 36 A5 28 00 9A 23 BC 35 97 35 30 37 04 E0 24 EA |6.(..#.5.507..$.|
000020E0: 35 2E 36 A5 28 04 3A 25 5B 36 7B 36 A5 28 00 04 |5.6.(.:%[6{6.(..|
000020F0: 25 01 36 07 36 22 36 01 9A 23 BC 35 97 35 C8 35 |%.6.6"6..#.5.5.5|
00002100: 05 E0 24 EA 35 97 35 A5 28 02 3A 25 5B 36 7B 36 |..$.5.5.(.:%[6{6|
00002110: A5 28 00 3A 25 5B 36 7B 36 A5 28 00 9A 23 BC 35 |.(.:%[6{6.(..#.5|
00002120: 97 35 30 37 03 E0 24 EA 35 2E 36 A5 28 03 3A 25 |.507..$.5.6.(.:%|
00002130: 5B 36 7B 36 A5 28 00 08 28 90 38 9B 38 A5 28 0D |[6{6.(..(.8.8.(.|
00002140: 9A 23 BC 35 97 35 30 37 08 3A 25 5B 36 7B 36 A5 |.#.5.507.:%[6{6.|
00002150: 28 00 3A 25 5B 36 7B 36 A5 28 00 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002160: 36 A5 28 00 9A 23 BC 35 97 35 30 37 0A E0 24 EA |6.(..#.5.507..$.|
00002170: 35 2E 36 A5 28 0A 3A 25 5B 36 7B 36 A5 28 00 88 |5.6.(.:%[6{6.(..|
00002180: 25 99 36 A0 36 A7 36 01 9A 23 BC 35 97 35 30 37 |%.6.6.6..#.5.507|
00002190: 07 3A 25 5B 36 7B 36 A5 28 00 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
000021A0: A5 28 00 3A 25 5B 36 7B 36 A5 28 00 9A 23 BC 35 |.(.:%[6{6.(..#.5|
000021B0: 97 35 30 37 06 E0 24 EA 35 2E 36 A5 28 06 3A 25 |.507..$.5.6.(.:%|
000021C0: 5B 36 7B 36 A5 28 00 3E 26 A6 37 A5 28 A5 28 0C |[6{6.(.>&.7.(.(.|
000021D0: 78 25 C2 36 30 37 A5 28 09 3A 25 5B 36 7B 36 A5 |x%.607.(.:%[6{6.|
000021E0: 28 00 3A 25 5B 36 7B 36 A5 28 01 E2 25 DB 36 2E |(.:%[6{6.(..%.6.|
000021F0: 36 A5 28 04 78 25 C2 36 30 37 A5 28 04 C1 25 BA |6.(.x%.607.(..%.|
00002200: 36 B4 36 2E 36 04 3A 25 5B 36 7B 36 A5 28 01 11 |6.6.6.:%[6{6.(..|
00002210: 25 08 37 07 36 FD 36 01 78 25 C2 36 C8 35 A5 28 |%.7.6.6.x%.6.5.(|
00002220: 05 C1 25 BA 36 B4 36 97 35 02 3A 25 5B 36 7B 36 |..%.6.6.5.:%[6{6|
00002230: A5 28 01 E2 25 DB 36 2E 36 A5 28 03 78 25 C2 36 |.(..%.6.6.(.x%.6|
00002240: 30 37 A5 28 03 C1 25 BA 36 B4 36 2E 36 03 3A 25 |07.(..%.6.6.6.:%|
00002250: 5B 36 7B 36 A5 28 01 00 28 90 38 AA 38 A5 28 0D |[6{6.(..(.8.8.(.|
00002260: 78 25 C2 36 30 37 A5 28 08 3A 25 5B 36 7B 36 A5 |x%.607.(.:%[6{6.|
00002270: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002280: 36 A5 28 01 78 25 C2 36 30 37 A5 28 0A C1 25 BA |6.(.x%.607.(..%.|
00002290: 36 B4 36 2E 36 0A 3A 25 5B 36 7B 36 A5 28 01 91 |6.6.6.:%[6{6.(..|
000022A0: 25 2B 37 A0 36 A7 36 01 78 25 C2 36 30 37 A5 28 |%+7.6.6.x%.607.(|
000022B0: 07 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
000022C0: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 78 25 C2 36 |.(.:%[6{6.(.x%.6|
000022D0: 30 37 A5 28 06 C1 25 BA 36 B4 36 2E 36 06 3A 25 |07.(..%.6.6.6.:%|
000022E0: 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 A5 28 01 |[6{6.(.:%[6{6.(.|
000022F0: B4 25 1D 37 97 35 30 37 09 3A 25 5B 36 7B 36 A5 |.%.7.507.:%[6{6.|
00002300: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002310: 36 A5 28 01 B4 25 1D 37 97 35 30 37 04 9A 25 0E |6.(..%.7.507..%.|
00002320: 37 AD 36 2E 36 04 3A 25 5B 36 7B 36 A5 28 01 1E |7.6.6.:%[6{6.(..|
00002330: 25 01 36 97 35 22 36 01 B4 25 1D 37 97 35 C8 35 |%.6.5"6..%.7.5.5|
00002340: 05 9A 25 0E 37 AD 36 97 35 02 3A 25 5B 36 7B 36 |..%.7.6.5.:%[6{6|
00002350: A5 28 01 02 26 B9 37 A5 28 A5 28 0C B4 25 1D 37 |.(..&.7.(.(..%.7|
00002360: 97 35 30 37 03 9A 25 0E 37 AD 36 2E 36 03 3A 25 |.507..%.7.6.6.:%|
00002370: 5B 36 7B 36 A5 28 01 F0 27 90 38 F1 38 A5 28 0D |[6{6.(..'.8.8.(.|
00002380: B4 25 1D 37 97 35 30 37 08 3A 25 5B 36 7B 36 A5 |.%.7.507.:%[6{6.|
00002390: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
000023A0: 36 A5 28 01 B4 25 1D 37 97 35 30 37 0A 9A 25 0E |6.(..%.7.507..%.|
000023B0: 37 AD 36 2E 36 0A 3A 25 5B 36 7B 36 A5 28 01 5B |7.6.6.:%[6{6.(.[|
000023C0: 26 99 36 4F 37 A7 36 01 B4 25 1D 37 97 35 30 37 |&.6O7.6..%.7.507|
000023D0: 07 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
000023E0: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 B4 25 1D 37 |.(.:%[6{6.(..%.7|
000023F0: 97 35 30 37 06 9A 25 0E 37 AD 36 2E 36 06 3A 25 |.507..%.7.6.6.:%|
00002400: 5B 36 7B 36 A5 28 01 0B 26 B6 38 A5 28 A5 28 01 |[6{6.(..&.8.(.(.|
00002410: 64 26 45 37 A0 36 2E 36 09 3A 25 5B 36 7B 36 A5 |d&E7.6.6.:%[6{6.|
00002420: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002430: 36 A5 28 01 64 26 45 37 A0 36 2E 36 04 88 26 BA |6.(.d&E7.6.6..&.|
00002440: 36 AD 36 2E 36 04 3A 25 5B 36 7B 36 A5 28 01 2B |6.6.6.:%[6{6.(.+|
00002450: 25 08 37 97 35 FD 36 01 64 26 45 37 A0 36 44 38 |%.7.5.6.d&E7.6D8|
00002460: 05 88 26 BA 36 AD 36 97 35 02 3A 25 5B 36 7B 36 |..&.6.6.5.:%[6{6|
00002470: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 64 26 45 37 |.(.:%[6{6.(.d&E7|
00002480: A0 36 2E 36 03 88 26 BA 36 AD 36 2E 36 03 3A 25 |.6.6..&.6.6.6.:%|
00002490: 5B 36 7B 36 A5 28 01 18 28 90 38 0B 39 A5 28 0D |[6{6.(..(.8.9.(.|
000024A0: 64 26 45 37 A0 36 2E 36 08 3A 25 5B 36 7B 36 A5 |d&E7.6.6.:%[6{6.|
000024B0: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
000024C0: 36 A5 28 01 64 26 45 37 A0 36 2E 36 0A 88 26 BA |6.(.d&E7.6.6..&.|
000024D0: 36 AD 36 2E 36 0A 3A 25 5B 36 7B 36 A5 28 01 D8 |6.6.6.:%[6{6.(..|
000024E0: 26 2B 37 4F 37 A7 36 01 64 26 45 37 A0 36 2E 36 |&+7O7.6.d&E7.6.6|
000024F0: 07 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
00002500: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 64 26 45 37 |.(.:%[6{6.(.d&E7|
00002510: A0 36 2E 36 06 88 26 BA 36 AD 36 2E 36 06 3A 25 |.6.6..&.6.6.6.:%|
00002520: 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 A5 28 01 |[6{6.(.:%[6{6.(.|
00002530: 4C 25 6C 37 97 35 73 37 09 3A 25 5B 36 7B 36 A5 |L%l7.5s7.:%[6{6.|
00002540: 28 01 3A 25 5B 36 7B 36 A5 28 01 70 25 6C 37 B0 |(.:%[6{6.(.p%l7.|
00002550: 35 73 37 04 4C 25 6C 37 97 35 73 37 04 5E 25 6C |5s7.L%l7.5s7.^%l|
00002560: 37 A4 35 73 37 04 3A 25 5B 36 7B 36 A5 28 01 A9 |7.5s7.:%[6{6.(..|
00002570: 26 E6 37 B0 35 A5 28 01 3A 25 5B 36 7B 36 A5 28 |&.7.5.(.:%[6{6.(|
00002580: 01 AF 26 62 37 A4 35 97 37 01 3A 25 5B 36 7B 36 |..&b7.5.7.:%[6{6|
00002590: A5 28 01 70 25 6C 37 B0 35 73 37 03 4C 25 6C 37 |.(.p%l7.5s7.L%l7|
000025A0: 97 35 73 37 03 5E 25 6C 37 A4 35 73 37 03 3A 25 |.5s7.^%l7.5s7.:%|
000025B0: 5B 36 7B 36 A5 28 01 10 28 90 38 A0 36 E5 38 0D |[6{6.(..(.8.6.8.|
000025C0: 4C 25 6C 37 97 35 73 37 08 3A 25 5B 36 7B 36 A5 |L%l7.5s7.:%[6{6.|
000025D0: 28 01 3A 25 5B 36 7B 36 A5 28 01 70 25 6C 37 B0 |(.:%[6{6.(.p%l7.|
000025E0: 35 73 37 0A 4C 25 6C 37 97 35 73 37 0A 5E 25 6C |5s7.L%l7.5s7.^%l|
000025F0: 37 A4 35 73 37 0B 3A 25 5B 36 7B 36 A5 28 01 C8 |7.5s7.:%[6{6.(..|
00002600: 26 62 37 B0 35 97 37 01 4C 25 6C 37 97 35 73 37 |&b7.5.7.L%l7.5s7|
00002610: 07 D1 26 62 37 A4 35 86 37 01 3A 25 5B 36 7B 36 |..&b7.5.7.:%[6{6|
00002620: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 4C 25 6C 37 |.(.:%[6{6.(.L%l7|
00002630: 97 35 73 37 06 3A 25 5B 36 7B 36 A5 28 01 3A 25 |.5s7.:%[6{6.(.:%|
00002640: 5B 36 7B 36 A5 28 01 66 25 F1 37 B0 35 C8 35 05 |[6{6.(.f%.7.5.5.|
00002650: 42 25 F1 37 97 35 D5 35 09 54 25 F1 37 A4 35 C8 |B%.7.5.5.T%.7.5.|
00002660: 35 05 3A 25 5B 36 7B 36 A5 28 01 66 25 F1 37 B0 |5.:%[6{6.(.f%.7.|
00002670: 35 D5 35 04 42 25 F1 37 97 35 D5 35 04 54 25 F1 |5.5.B%.7.5.5.T%.|
00002680: 37 A4 35 D5 35 04 3A 25 5B 36 7B 36 A5 28 01 96 |7.5.5.:%[6{6.(..|
00002690: 27 62 37 97 35 CD 38 01 42 25 F1 37 97 35 C8 35 |'b7.5.8.B%.7.5.5|
000026A0: 05 9F 27 62 37 97 35 06 38 01 3A 25 5B 36 7B 36 |..'b7.5.8.:%[6{6|
000026B0: A5 28 01 66 25 F1 37 B0 35 D5 35 03 42 25 F1 37 |.(.f%.7.5.5.B%.7|
000026C0: 97 35 D5 35 03 54 25 F1 37 A4 35 D5 35 03 3A 25 |.5.5.T%.7.5.5.:%|
000026D0: 5B 36 7B 36 A5 28 01 F8 27 90 38 A0 36 DB 38 0D |[6{6.(..'.8.6.8.|
000026E0: 42 25 F1 37 97 35 D5 35 08 3A 25 5B 36 7B 36 A5 |B%.7.5.5.:%[6{6.|
000026F0: 28 01 3A 25 5B 36 7B 36 A5 28 01 66 25 F1 37 B0 |(.:%[6{6.(.f%.7.|
00002700: 35 D5 35 0A 42 25 F1 37 97 35 D5 35 0A 54 25 F1 |5.5.B%.7.5.5.T%.|
00002710: 37 A4 35 D5 35 0B 3A 25 5B 36 7B 36 A5 28 01 CC |7.5.5.:%[6{6.(..|
00002720: 27 99 36 14 38 A7 36 01 42 25 F1 37 97 35 D5 35 |'.6.8.6.B%.7.5.5|
00002730: 07 A8 27 62 37 F7 37 06 38 01 3A 25 5B 36 7B 36 |..'b7.7.8.:%[6{6|
00002740: A5 28 01 66 25 F1 37 B0 35 D5 35 06 42 25 F1 37 |.(.f%.7.5.5.B%.7|
00002750: 97 35 D5 35 06 54 25 F1 37 A4 35 D5 35 07 3A 25 |.5.5.T%.7.5.5.:%|
00002760: 5B 36 7B 36 A5 28 01 7A 27 5B 38 B0 35 C8 35 05 |[6{6.(.z'[8.5.5.|
00002770: 88 27 5B 38 97 35 D5 35 09 3A 25 5B 36 7B 36 A5 |.'[8.5.5.:%[6{6.|
00002780: 28 01 3A 25 5B 36 7B 36 A5 28 01 7A 27 5B 38 B0 |(.:%[6{6.(.z'[8.|
00002790: 35 D5 35 04 88 27 5B 38 97 35 D5 35 04 23 27 E6 |5.5..'[8.5.5.#'.|
000027A0: 37 2E 36 A5 28 04 3A 25 5B 36 7B 36 A5 28 01 17 |7.6.(.:%[6{6.(..|
000027B0: 27 2B 38 B0 35 A5 28 01 88 27 5B 38 97 35 C8 35 |'+8.5.(..'[8.5.5|
000027C0: 05 1D 27 E6 37 A4 35 A5 28 01 3A 25 5B 36 7B 36 |..'.7.5.(.:%[6{6|
000027D0: A5 28 01 7A 27 5B 38 B0 35 D5 35 03 88 27 5B 38 |.(.z'[8.5.5..'[8|
000027E0: 97 35 D5 35 03 23 27 E6 37 2E 36 A5 28 03 3A 25 |.5.5.#'.7.6.(.:%|
000027F0: 5B 36 7B 36 A5 28 01 E0 27 90 38 64 38 A5 28 0D |[6{6.(..'.8d8.(.|
00002800: 88 27 5B 38 97 35 D5 35 08 3A 25 5B 36 7B 36 A5 |.'[8.5.5.:%[6{6.|
00002810: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002820: 36 A5 28 01 88 27 5B 38 97 35 D5 35 0A 23 27 E6 |6.(..'[8.5.5.#'.|
00002830: 37 2E 36 A5 28 0A 3A 25 5B 36 7B 36 A5 28 01 B1 |7.6.(.:%[6{6.(..|
00002840: 27 99 36 36 38 A7 36 01 88 27 5B 38 97 35 D5 35 |'.668.6..'[8.5.5|
00002850: 07 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
00002860: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 88 27 5B 38 |.(.:%[6{6.(..'[8|
00002870: 97 35 D5 35 06 23 27 E6 37 2E 36 A5 28 06 3A 25 |.5.5.#'.7.6.(.:%|
00002880: 5B 36 7B 36 A5 28 01 5F 27 5B 38 A4 35 C8 35 05 |[6{6.(._'[8.5.5.|
00002890: 3B 27 4C 38 A0 36 2E 36 09 3A 25 5B 36 7B 36 A5 |;'L8.6.6.:%[6{6.|
000028A0: 28 01 3A 25 5B 36 7B 36 A5 28 01 5F 27 5B 38 A4 |(.:%[6{6.(._'[8.|
000028B0: 35 D5 35 04 3B 27 4C 38 A0 36 2E 36 04 BA 27 2B |5.5.;'L8.6.6..'+|
000028C0: 38 2E 36 A5 28 04 3A 25 5B 36 7B 36 A5 28 01 35 |8.6.(.:%[6{6.(.5|
000028D0: 27 2B 38 A4 35 A5 28 01 3B 27 4C 38 A0 36 44 38 |'+8.5.(.;'L8.6D8|
000028E0: 05 0D 27 1E 38 A5 28 A5 28 01 3A 25 5B 36 7B 36 |..'.8.(.(.:%[6{6|
000028F0: A5 28 01 5F 27 5B 38 A4 35 D5 35 03 3B 27 4C 38 |.(._'[8.5.5.;'L8|
00002900: A0 36 2E 36 03 BA 27 2B 38 2E 36 A5 28 03 3A 25 |.6.6..'+8.6.(.:%|
00002910: 5B 36 7B 36 A5 28 01 D5 27 90 38 7C 38 A5 28 0D |[6{6.(..'.8|8.(.|
00002920: 3B 27 4C 38 A0 36 2E 36 08 3A 25 5B 36 7B 36 A5 |;'L8.6.6.:%[6{6.|
00002930: 28 01 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B |(.:%[6{6.(.:%[6{|
00002940: 36 A5 28 01 3B 27 4C 38 A0 36 2E 36 0A BA 27 2B |6.(.;'L8.6.6..'+|
00002950: 38 2E 36 A5 28 0A 3A 25 5B 36 7B 36 A5 28 01 0E |8.6.(.:%[6{6.(..|
00002960: 27 2B 37 36 38 A7 36 01 3B 27 4C 38 A0 36 2E 36 |'+768.6.;'L8.6.6|
00002970: 07 3A 25 5B 36 7B 36 A5 28 01 3A 25 5B 36 7B 36 |.:%[6{6.(.:%[6{6|
00002980: A5 28 01 3A 25 5B 36 7B 36 A5 28 01 3B 27 4C 38 |.(.:%[6{6.(.;'L8|
00002990: A0 36 2E 36 06 BA 27 2B 38 2E 36 A5 28 06 3A 25 |.6.6..'+8.6.(.:%|
000029A0: 5B 36 7B 36 A5 28 01 8D 66 C0 48 8A 48 98 48 A5 |[6{6.(..f.H.H.H.|
000029B0: 01 29 FB 85 01 78 AD 64 C0 F0 03 4C 77 33 AD 66 |.)...x.d...Lw3.f|
000029C0: C0 C9 9C D0 0D A9 00 8D 6B C0 A9 01 8D 6A C0 4C |........k....j.L|
000029D0: 88 34 C9 9D D0 09 AD 6A C0 8D 6B C0 4C 88 34 C9 |.4.....j..k.L.4.|
000029E0: 0C D0 03 4C 0F 33 C9 1F D0 08 A9 02 8D 64 C0 4C |...L.3.......d.L|
000029F0: 03 33 C9 0D D0 18 A9 00 8D 65 C0 8D 6B C0 A9 01 |.3.......e..k...|
00002A00: 8D 6A C0 A5 24 85 29 A5 25 85 2A 4C 03 33 C9 0A |.j..$.).%.*L.3..|
00002A10: D0 03 4C AE 32 C9 14 D0 27 38 CE 65 C0 A5 29 E9 |..L.2...'8.e..).|
00002A20: 08 85 29 A5 2A E9 00 85 2A A0 07 A9 00 91 29 88 |..).*...*.....).|
00002A30: 10 FB A9 20 AC 65 C0 91 22 A9 10 91 20 4C 03 33 |... .e.."... L.3|
00002A40: C9 7B 90 0F 38 E9 81 AA BD AC 34 8D 6A C0 A9 20 |.{..8.....4.j.. |
00002A50: 4C 61 32 C9 5F D0 05 A9 1F 4C 61 32 C9 61 90 02 |La2._....La2.a..|
00002A60: E9 60 8D 63 C0 AD 66 C0 AC 65 C0 91 22 A9 00 85 |.`.c..f..e.."...|
00002A70: 26 85 27 AE 63 C0 E0 00 F0 11 18 A5 26 69 08 85 |&.'.c.......&i..|
00002A80: 26 A5 27 69 00 85 27 CA 4C 75 32 A0 00 18 A5 27 |&.'i..'.Lu2....'|
00002A90: 69 D8 85 27 B1 26 91 29 C8 C0 08 D0 F7 AD 6A C0 |i..'.&.)......j.|
00002AA0: 0A 0A 0A 0A 0D 6B C0 AC 65 C0 91 20 4C E9 32 18 |.....k..e.. L.2.|
00002AB0: A5 24 69 40 85 29 85 24 A5 25 69 01 85 2A 85 25 |.$i@.).$.%i..*.%|
00002AC0: A9 00 8D 6B C0 8D 65 C0 A9 01 8D 6A C0 18 A5 20 |...k..e....j... |
00002AD0: 69 28 85 20 A5 21 69 00 85 21 18 A5 22 69 28 85 |i(. .!i..!.."i(.|
00002AE0: 22 A5 23 69 00 85 23 4C 03 33 EE 65 C0 18 A5 29 |".#i..#L.3.e...)|
00002AF0: 69 08 85 29 A5 2A 69 00 85 2A AD 65 C0 C9 28 D0 |i..).*i..*.e..(.|
00002B00: 03 4C AE 32 A5 01 09 04 85 01 68 A8 68 AA 68 60 |.L.2......h.h.h`|
00002B10: A0 00 A9 00 85 29 A9 A0 85 2A A9 00 91 29 C8 D0 |.....)...*...)..|
00002B20: F9 E6 2A A5 2A C9 C0 D0 F1 A9 00 85 20 A9 8C 85 |..*.*....... ...|
00002B30: 21 A9 04 85 23 A0 00 84 22 A9 10 91 20 A9 20 91 |!...#..."... . .|
00002B40: 22 C8 D0 F5 E6 21 E6 23 A5 21 C9 91 D0 EB A9 01 |"....!.#.!......|
00002B50: 8D 6A C0 A9 00 8D 6B C0 A9 8C 85 21 A9 00 8D 65 |.j....k....!...e|
00002B60: C0 A9 A0 85 2A A9 00 85 24 A9 A0 85 25 A9 00 85 |....*...$...%...|
00002B70: 22 A9 04 85 23 4C 03 33 C9 01 F0 40 AE 66 C0 A0 |"...#L.3...@.f..|
00002B80: 00 A9 00 85 29 85 24 A9 A0 85 2A 85 25 A9 00 85 |....).$...*.%...|
00002B90: 22 A9 04 85 23 A9 00 85 20 A9 8C 85 21 E0 00 F0 |"...#... ...!...|
00002BA0: 12 18 A5 29 69 08 85 29 A5 2A 69 00 85 2A C8 CA |...)i..).*i..*..|
00002BB0: 4C 9C 33 8C 65 C0 CE 64 C0 4C 03 33 AD 66 C0 F0 |L.3.e..d.L.3.f..|
00002BC0: 38 CE 66 C0 18 A5 29 69 40 85 29 A5 2A 69 01 85 |8.f...)i@.).*i..|
00002BD0: 2A A5 20 69 28 85 20 A5 21 69 00 85 21 18 A5 22 |*. i(. .!i..!.."|
00002BE0: 69 28 85 22 A5 23 69 00 85 23 A5 24 69 40 85 24 |i(.".#i..#.$i@.$|
00002BF0: A5 25 69 01 85 25 4C BB 33 CE 64 C0 A9 00 8D 6B |.%i..%L.3.d....k|
00002C00: C0 A9 01 8D 6A C0 AD F0 02 D0 03 20 BB 34 4C 03 |....j...... .4L.|
00002C10: 33 8D 66 C0 48 8A 48 98 48 AD 66 C0 C9 0D F0 03 |3.f.H.H.H.f.....|
00002C20: 4C AE 31 4C AE 32 8A 48 98 48 20 9F FF 20 E4 FF |L.1L.2.H.H .. ..|
00002C30: 78 F0 F7 20 5D 34 8D 66 C0 AD 68 C0 0D 67 C0 0D |x.. ]4.f..h..g..|
00002C40: 69 C0 F0 05 A9 00 8D 66 C0 A0 3C 88 F0 08 A2 FF |i......f..<.....|
00002C50: CA D0 FD 4C 4A 34 68 A8 68 AA AD 66 C0 60 48 A9 |...LJ4h.h..f.`H.|
00002C60: 00 8D 68 C0 8D 67 C0 8D 69 C0 68 C9 85 D0 06 A9 |..h..g..i.h.....|
00002C70: 01 8D 68 C0 60 C9 86 D0 06 A9 01 8D 69 C0 60 C9 |..h.`.......i.`.|
00002C80: 87 D0 05 A9 01 8D 67 C0 60 AC 65 C0 B1 20 29 F0 |......g.`.e.. ).|
00002C90: 0D 6B C0 91 20 C8 C0 28 D0 F2 A9 20 4C 61 32 C9 |.k.. ..(... La2.|
00002CA0: 87 F0 01 60 AC 65 C0 B1 22 AA A9 87 60 02 05 07 |...`.e.."...`...|
00002CB0: 06 04 03 01 08 09 0A 0B 0C 0D 0E 0F A9 00 85 76 |...............v|
00002CC0: A9 8C 85 77 A2 12 A0 14 B1 76 29 0F C9 04 F0 18 |...w.....v).....|
00002CD0: C8 C0 28 D0 F3 18 A5 76 69 28 85 76 A5 77 69 00 |..(....vi(.v.wi.|
00002CE0: 85 77 CA D0 E3 4C EE 34 A9 10 91 76 4C CF 34 AC |.w...L.4...vL.4.|
00002CF0: 65 C0 B1 20 29 F0 09 04 91 20 60 AC 5A C0 AD 13 |e.. ).... `.Z...|
00002D00: C0 91 0E EE 5A C0 60 A9 1F 20 A6 31 A9 00 20 A6 |....Z.`.. .1.. .|
00002D10: 31 20 A6 31 A2 28 A9 20 20 A6 31 CA 10 F8 A9 01 |1 .1.(. .1.....|
00002D20: 8D 02 C0 A9 1F 20 A6 31 A9 00 20 A6 31 AD 02 C0 |..... .1.. .1...|
00002D30: 20 A6 31 A2 13 A9 20 20 A6 31 CA 10 F8 EE 02 C0 | .1... .1......|
00002D40: AD 02 C0 C9 12 D0 DC A9 1F 20 A6 31 A9 00 20 A6 |......... .1.. .|
00002D50: 31 A9 11 20 A6 31 A2 C8 A9 20 20 A6 31 CA D0 F8 |1.. .1... .1...|
00002D60: 20 2D 1A 60 A9 77 85 12 A9 35 85 13 20 C0 22 20 | -.`.w...5.. ." |
00002D70: 57 10 20 25 34 4C 4E 0C 1F 00 12 45 4E 44 20 4F |W. %4LN....END O|
00002D80: 46 20 50 52 4F 47 52 41 4D 20 2D 20 50 52 45 53 |F PROGRAM - PRES|
00002D90: 53 20 41 20 4B 45 59 FF 61 63 63 75 6D 75 6C 61 |S A KEY.accumula|
00002DA0: 74 6F 72 20 FF 58 20 72 65 67 69 73 74 65 72 20 |tor .X register |
00002DB0: FF 59 20 72 65 67 69 73 74 65 72 20 FF 4C 6F 67 |.Y register .Log|
00002DC0: 69 63 61 6C 20 4F 52 20 FF 77 69 74 68 20 6E 75 |ical OR .with nu|
00002DD0: 6D 62 65 72 20 FF 77 69 74 68 20 6D 65 6D 6F 72 |mber .with memor|
00002DE0: 79 20 6C 6F 63 61 74 69 6F 6E FF 41 72 69 74 68 |y location.Arith|
00002DF0: 6D 65 74 69 63 20 73 68 69 66 74 20 6C 65 66 74 |metic shift left|
00002E00: 20 FF 50 75 73 68 20 FF 70 72 6F 63 65 73 73 6F | .Push .processo|
00002E10: 72 20 73 74 61 74 75 73 20 72 65 67 69 73 74 65 |r status registe|
00002E20: 72 0D FF 6F 6E 74 6F 20 73 74 61 63 6B 20 FF 6D |r..onto stack .m|
00002E30: 65 6D 6F 72 79 20 6C 6F 63 61 74 69 6F 6E 20 FF |emory location .|
00002E40: 42 72 65 61 6B 20 2D 20 77 69 6C 6C 20 73 74 6F |Break - will sto|
00002E50: 70 20 65 78 65 63 75 74 69 6F 6E FF 4E 6F 74 20 |p execution.Not |
00002E60: 61 20 76 61 6C 69 64 20 69 6E 73 74 72 75 63 74 |a valid instruct|
00002E70: 69 6F 6E 20 6F 70 2D 63 6F 64 65 FF 0D 50 52 45 |ion op-code..PRE|
00002E80: 53 53 20 52 45 54 55 52 4E 20 4B 45 59 20 54 4F |SS RETURN KEY TO|
00002E90: 20 43 4F 4E 54 49 4E 55 45 FF 63 6C 65 61 72 20 | CONTINUE.clear |
00002EA0: FF 63 61 72 72 79 20 FF 66 6C 61 67 20 FF 72 69 |.carry .flag .ri|
00002EB0: 67 68 74 20 FF 6C 65 66 74 20 FF 52 6F 74 61 74 |ght .left .Rotat|
00002EC0: 65 20 FF 4C 6F 67 69 63 61 6C 20 41 4E 44 20 61 |e .Logical AND a|
00002ED0: 63 63 75 6D 75 6C 61 74 6F 72 20 FF 54 65 73 74 |ccumulator .Test|
00002EE0: 20 42 49 54 73 20 6F 66 20 61 63 63 75 6D 75 6C | BITs of accumul|
00002EF0: 61 74 6F 72 20 61 67 61 69 6E 73 74 20 FF 66 72 |ator against .fr|
00002F00: 6F 6D 20 73 74 61 63 6B FF 50 75 6C 6C 20 FF 4C |om stack.Pull .L|
00002F10: 6F 67 69 63 61 6C 20 73 68 69 66 74 20 FF 45 78 |ogical shift .Ex|
00002F20: 63 6C 75 73 69 76 65 20 4F 52 20 FF 73 65 74 20 |clusive OR .set |
00002F30: FF 77 69 74 68 20 6D 65 6D 6F 72 79 0D 6C 6F 63 |.with memory.loc|
00002F40: 61 74 69 6F 6E FF 41 64 64 20 77 69 74 68 20 FF |ation.Add with .|
00002F50: 69 6E 74 65 72 72 75 70 74 20 64 69 73 61 62 6C |interrupt disabl|
00002F60: 65 20 FF 54 72 61 6E 73 66 65 72 20 FF 53 74 6F |e .Transfer .Sto|
00002F70: 72 65 20 FF 61 74 20 6D 65 6D 6F 72 79 20 6C 6F |re .at memory lo|
00002F80: 63 61 74 69 6F 6E FF 74 6F 20 73 74 61 63 6B 20 |cation.to stack |
00002F90: 70 6F 69 6E 74 65 72 FF 74 6F 20 61 63 63 75 6D |pointer.to accum|
00002FA0: 75 6C 61 74 6F 72 FF 4A 75 6D 70 20 74 6F 20 73 |ulator.Jump to s|
00002FB0: 75 62 72 6F 75 74 69 6E 65 FF 4A 75 6D 70 20 2D |ubroutine.Jump -|
00002FC0: 20 4C 6F 61 64 20 70 72 6F 67 72 61 6D 20 63 6F | Load program co|
00002FD0: 75 6E 74 65 72 20 77 69 74 68 20 6E 65 77 0D 61 |unter with new.a|
00002FE0: 64 64 72 65 73 73 FF 44 65 63 72 65 6D 65 6E 74 |ddress.Decrement|
00002FF0: 20 FF 4C 6F 61 64 20 FF 73 74 61 63 6B 20 70 6F | .Load .stack po|
00003000: 69 6E 74 65 72 20 FF 74 6F 20 58 20 72 65 67 69 |inter .to X regi|
00003010: 73 74 65 72 FF 6F 76 65 72 66 6C 6F 77 20 FF 4E |ster.overflow .N|
00003020: 6F 20 6F 70 65 72 61 74 69 6F 6E FF 49 6E 63 72 |o operation.Incr|
00003030: 65 6D 65 6E 74 20 FF 64 65 63 69 6D 61 6C 20 6D |ement .decimal m|
00003040: 6F 64 65 20 FF 6E 75 6D 62 65 72 20 FF 53 75 62 |ode .number .Sub|
00003050: 74 72 61 63 74 20 77 69 74 68 20 FF 43 6F 6D 70 |tract with .Comp|
00003060: 61 72 65 20 FF 6E 6F 74 20 65 71 75 61 6C 20 74 |are .not equal t|
00003070: 6F 20 7A 65 72 6F 20 28 5A 3D 30 29 FF 65 71 75 |o zero (Z=0).equ|
00003080: 61 6C 20 74 6F 20 7A 65 72 6F 20 28 5A 3D 31 29 |al to zero (Z=1)|
00003090: FF 42 72 61 6E 63 68 20 69 66 20 FF 70 6F 73 69 |.Branch if .posi|
000030A0: 74 69 76 65 20 28 4E 3D 30 29 FF 6D 69 6E 75 73 |tive (N=0).minus|
000030B0: 20 28 4E 3D 31 29 FF 52 65 74 75 72 6E 20 66 72 | (N=1).Return fr|
000030C0: 6F 6D 20 73 75 62 72 6F 75 74 69 6E 65 FF 74 6F |om subroutine.to|
000030D0: 20 59 20 72 65 67 69 73 74 65 72 FF 73 65 74 20 | Y register.set |
000030E0: 28 43 3D 31 29 FF 63 6C 65 61 72 20 28 43 3D 30 |(C=1).clear (C=0|
000030F0: 29 FF 6F 76 65 72 66 6C 6F 77 20 66 6C 61 67 20 |).overflow flag |
00003100: 63 6C 65 61 72 20 28 56 3D 30 29 FF 6F 76 65 72 |clear (V=0).over|
00003110: 66 6C 6F 77 20 66 6C 61 67 20 73 65 74 20 28 56 |flow flag set (V|
00003120: 3D 31 29 FF 00 A9 01 8D 02 C0 A9 14 8D 0B C0 A9 |=1).............|
00003130: 00 8D 14 C0 4C 4E 39 A9 1F 20 A6 31 AD 0B C0 20 |....LN9.. .1... |
00003140: A6 31 AD 02 C0 20 A6 31 A9 87 20 9E 34 8A 60 20 |.1... .1.. .4.` |
00003150: 36 39 AE 14 C0 9D 51 C0 EE 14 C0 EE 0B C0 AD 14 |69....Q.........|
00003160: C0 C9 06 D0 EA AD 51 C0 C9 20 D0 03 4C AA 39 A9 |......Q.. ..L.9.|
00003170: 01 8D 63 C0 A9 14 8D 0B C0 A9 00 8D 14 C0 AD 63 |..c............c|
00003180: C0 CD 02 C0 F0 1B 20 00 3A AE 14 C0 DD 51 C0 D0 |...... .:....Q..|
00003190: 10 EE 14 C0 EE 0B C0 AD 14 C0 C9 06 D0 E8 4C B8 |..............L.|
000031A0: 39 EE 63 C0 AD 63 C0 C9 11 D0 C9 EE 02 C0 AD 02 |9.c..c..........|
000031B0: C0 C9 11 F0 03 4C 29 39 60 A9 DD 85 12 A9 39 85 |.....L)9`.....9.|
000031C0: 13 20 57 10 A2 00 BD 51 C0 20 A6 31 E8 E0 06 D0 |. W....Q. .1....|
000031D0: F5 A9 22 20 A6 31 20 25 34 68 68 4C 4E 0C 1F 00 |.." .1 %4hhLN...|
000031E0: 12 45 52 52 4F 52 20 2D 20 44 55 50 4C 49 43 41 |.ERROR - DUPLICA|
000031F0: 54 45 20 4C 41 42 45 4C 20 46 4F 55 4E 44 20 22 |TE LABEL FOUND "|
00003200: FF A9 1F 20 A6 31 AD 0B C0 20 A6 31 AD 63 C0 20 |... .1... .1.c. |
00003210: A6 31 A9 87 20 9E 34 8A 60 A9 1F 20 A6 31 A9 1A |.1.. .4.`.. .1..|
00003220: 20 A6 31 AD 28 C0 20 A6 31 A9 87 20 9E 34 E0 20 | .1.(. .1.. .4. |
00003230: F0 03 4C CC 3B A2 03 BD 15 C0 C9 20 F0 1B 4C 47 |..L.;...... ..LG|
00003240: 3B AD 15 C0 C9 42 F0 07 C9 4A F0 03 4C A6 3A E8 |;....B...J..L.:.|
00003250: BD 15 C0 C9 20 D0 F8 F0 4E E8 BD 15 C0 E0 05 F0 |.... ...N.......|
00003260: 08 C9 20 F0 42 C9 41 B0 D8 C9 24 F0 13 E0 05 F0 |.. .B.A...$.....|
00003270: 08 C9 28 F0 41 C9 23 F0 E0 C9 30 B0 06 4C 1D 3B |..(.A.#...0..L.;|
00003280: 4C 22 3B C9 3A B0 F6 E8 E0 0D F0 F1 BD 15 C0 C9 |L";.:...........|
00003290: 20 F0 14 C9 2C F0 0F C9 30 B0 03 4C 1D 3B C9 3A | ...,...0..L.;.:|
000032A0: B0 DB 4C 86 3A 60 E8 E8 E0 0D F0 F9 BD 15 C0 C9 |..L.:`..........|
000032B0: 20 F0 F4 4C 1D 3B E8 BD 15 C0 C9 29 F0 0B C9 28 | ..L.;.....)...(|
000032C0: F0 BB E0 0C D0 F0 4C 1D 3B E8 BD 15 C0 C9 29 F0 |......L.;.....).|
000032D0: AC C9 28 F0 A8 E0 0C D0 F0 A2 05 BD 15 C0 C9 24 |..(............$|
000032E0: F0 1D BD 15 C0 C9 29 F0 0F C9 2C F0 0B C9 30 90 |......)...,...0.|
000032F0: 0B C9 3A B0 07 E8 D0 EA E8 4C A5 3A 4C 1D 3B E8 |..:......L.:L.;.|
00003300: BD 15 C0 C9 29 F0 F1 C9 2C F0 ED C9 30 90 ED C9 |....)...,...0...|
00003310: 47 B0 E9 C9 41 B0 E8 C9 3A B0 E1 4C FE 3A 68 68 |G...A...:..L.:hh|
00003320: 4C 9D 14 E8 BD 15 C0 C9 20 F0 17 C9 2C F0 16 C9 |L....... ...,...|
00003330: 30 90 C9 C9 3A 90 EC C9 41 90 C1 C9 47 B0 BD 4C |0...:...A...G..L|
00003340: 22 3B 4C A6 3A 4C A5 3A A9 55 85 12 A9 3B 85 13 |";L.:L.:.U...;..|
00003350: 20 57 10 4C D7 3B 1F 00 12 54 48 45 52 45 20 53 | W.L.;...THERE S|
00003360: 48 4F 55 4C 44 20 42 45 20 41 20 53 50 41 43 45 |HOULD BE A SPACE|
00003370: 20 42 45 54 57 45 45 4E 20 54 48 45 0D 0A 4D 4E | BETWEEN THE..MN|
00003380: 45 4D 4F 4E 49 43 20 41 4E 44 20 4F 50 45 52 41 |EMONIC AND OPERA|
00003390: 4E 44 2E 20 54 48 45 20 48 49 47 48 4C 49 47 48 |ND. THE HIGHLIGH|
000033A0: 54 45 44 0D 0A 4C 49 4E 45 20 49 4E 44 49 43 41 |TED..LINE INDICA|
000033B0: 54 45 53 20 57 48 49 43 48 20 4C 49 4E 45 20 48 |TES WHICH LINE H|
000033C0: 41 53 20 41 4E 20 45 52 52 4F 52 2E FF A9 03 85 |AS AN ERROR.....|
000033D0: 12 A9 3C 85 13 20 57 10 A9 1F 20 A6 31 A9 10 20 |..<.. W... .1.. |
000033E0: A6 31 AD 28 C0 20 A6 31 A9 88 20 A6 31 A9 81 20 |.1.(. .1.. .1.. |
000033F0: A6 31 A9 9D 20 A6 31 A9 87 20 A6 31 20 25 34 68 |.1.. .1.. .1 %4h|
00003400: 68 4C 4E 0C 1F 00 12 41 20 4C 41 42 45 4C 20 53 |hLN....A LABEL S|
00003410: 48 4F 55 4C 44 20 4F 4E 4C 59 20 42 45 20 55 50 |HOULD ONLY BE UP|
00003420: 54 4F 20 53 49 58 20 4C 45 54 54 45 52 53 20 4C |TO SIX LETTERS L|
00003430: 4F 4E 47 2E 20 54 48 45 20 48 49 47 48 4C 49 47 |ONG. THE HIGHLIG|
00003440: 48 54 45 44 20 4C 49 4E 45 20 49 4E 44 49 43 41 |HTED LINE INDICA|
00003450: 54 45 53 20 54 48 45 4C 49 4E 45 20 57 48 49 43 |TES THELINE WHIC|
00003460: 48 20 48 41 53 20 41 20 4C 41 42 45 4C 20 54 4F |H HAS A LABEL TO|
00003470: 4F 20 4C 4F 4E 47 2E FF 0B 8E 3C AC 3C CF 3C F9 |O LONG....<.<.<.|
00003480: 3C 1C 3D 3F 3D 65 3D 88 3D B0 3D D3 3D F2 3D 01 |<.=?=e=.=.=.=.=.|
00003490: 20 20 20 4C 65 73 73 6F 6E 20 31 39 20 2D 20 54 | Lesson 19 - T|
000034A0: 68 65 20 73 74 61 63 6B 0D 0A FF 11 3E 02 20 20 |he stack....>. |
000034B0: 20 20 20 45 78 65 72 63 69 73 65 20 31 20 66 6F | Exercise 1 fo|
000034C0: 72 20 6C 65 73 73 6F 6E 20 31 39 0D 0A FF 70 4C |r lesson 19...pL|
000034D0: 01 20 20 20 4C 65 73 73 6F 6E 20 32 30 20 2D 20 |. Lesson 20 - |
000034E0: 4D 6F 72 65 20 61 64 64 72 65 73 73 69 6E 67 20 |More addressing |
000034F0: 6D 6F 64 65 73 0D 0A FF 29 4D 02 20 20 20 20 20 |modes...)M. |
00003500: 45 78 65 72 63 69 73 65 20 31 20 66 6F 72 20 6C |Exercise 1 for l|
00003510: 65 73 73 6F 6E 20 32 30 0D 0A FF 55 5D 02 20 20 |esson 20...U]. |
00003520: 20 20 20 45 78 65 72 63 69 73 65 20 32 20 66 6F | Exercise 2 fo|
00003530: 72 20 6C 65 73 73 6F 6E 20 32 30 0D 0A FF 28 5E |r lesson 20...(^|
00003540: 01 20 20 20 4C 65 73 73 6F 6E 20 32 31 20 2D 20 |. Lesson 21 - |
00003550: 4D 6F 72 65 20 6F 6E 20 74 68 65 20 73 74 61 63 |More on the stac|
00003560: 6B 0D 0A FF 0D 5F 02 20 20 20 20 20 45 78 65 72 |k...._. Exer|
00003570: 63 69 73 65 20 31 20 66 6F 72 20 6C 65 73 73 6F |cise 1 for lesso|
00003580: 6E 20 32 31 0D 0A FF 46 66 01 20 20 20 4C 65 73 |n 21...Ff. Les|
00003590: 73 6F 6E 20 32 32 20 2D 20 54 68 65 20 42 49 54 |son 22 - The BIT|
000035A0: 20 69 6E 73 74 72 75 63 74 69 6F 6E 0D 0A FF 0A | instruction....|
000035B0: 67 02 20 20 20 20 20 45 78 65 72 63 69 73 65 20 |g. Exercise |
000035C0: 31 20 66 6F 72 20 6C 65 73 73 6F 6E 20 32 32 0D |1 for lesson 22.|
000035D0: 0A FF EA 69 01 20 20 20 4C 65 73 73 6F 6E 20 32 |...i. Lesson 2|
000035E0: 33 20 2D 20 49 6E 74 65 72 72 75 70 74 73 0D 0A |3 - Interrupts..|
000035F0: FF D1 6A 01 20 20 20 4C 65 73 73 6F 6E 20 32 34 |..j. Lesson 24|
00003600: 20 2D 20 57 68 61 74 20 6E 6F 77 20 3F 0D 0A FF | - What now ?...|
00003610: 34 71 1F 0F 02 54 48 45 20 53 54 41 43 4B 0D 0A |4q...THE STACK..|
00003620: 0A 20 54 68 65 20 73 74 61 63 6B 20 69 73 20 6C |. The stack is l|
00003630: 69 6B 65 20 61 20 70 69 6C 65 20 6F 66 20 70 6C |ike a pile of pl|
00003640: 61 74 65 73 0D 0A 73 74 61 63 6B 65 64 20 6F 6E |ates..stacked on|
00003650: 65 20 6F 6E 20 74 6F 70 20 6F 66 20 74 68 65 20 |e on top of the |
00003660: 6F 74 68 65 72 20 74 68 61 74 0D 0A 63 61 6E 20 |other that..can |
00003670: 62 65 20 75 70 74 6F 20 32 35 36 20 70 6C 61 74 |be upto 256 plat|
00003680: 65 73 20 68 69 67 68 2E 20 59 6F 75 20 63 61 6E |es high. You can|
00003690: 0D 0A 61 64 64 20 70 6C 61 74 65 73 20 74 6F 20 |..add plates to |
000036A0: 74 68 65 20 74 6F 70 20 6F 72 20 72 65 6D 6F 76 |the top or remov|
000036B0: 65 20 70 6C 61 74 65 73 0D 0A 66 72 6F 6D 20 74 |e plates..from t|
000036C0: 68 65 20 74 6F 70 2E 20 49 66 20 79 6F 75 20 77 |he top. If you w|
000036D0: 61 6E 74 20 61 20 70 6C 61 74 65 20 6E 65 61 72 |ant a plate near|
000036E0: 0D 0A 74 68 65 20 62 6F 74 74 6F 6D 2C 20 79 6F |..the bottom, yo|
000036F0: 75 20 6D 75 73 74 20 73 74 61 72 74 20 66 72 6F |u must start fro|
00003700: 6D 20 74 68 65 20 74 6F 70 0D 0A 74 61 6B 69 6E |m the top..takin|
00003710: 67 20 6F 66 66 20 61 6C 6C 20 74 68 65 20 70 6C |g off all the pl|
00003720: 61 74 65 73 2C 20 74 68 72 6F 77 69 6E 67 20 74 |ates, throwing t|
00003730: 68 65 6D 61 77 61 79 20 75 6E 74 69 6C 20 79 6F |hemaway until yo|
00003740: 75 20 67 65 74 20 74 6F 20 74 68 65 20 70 6C 61 |u get to the pla|
00003750: 74 65 20 74 68 61 74 20 79 6F 75 77 61 6E 74 2E |te that youwant.|
00003760: FE 1F 0F 02 54 48 45 20 53 54 41 43 4B 0D 0A 0A |....THE STACK...|
00003770: 20 54 68 65 20 73 74 61 63 6B 20 69 73 20 6F 6E | The stack is on|
00003780: 65 20 70 61 67 65 20 6F 66 20 6D 65 6D 6F 72 79 |e page of memory|
00003790: 20 74 68 61 74 0D 0A 72 65 73 69 64 65 73 20 61 | that..resides a|
000037A0: 74 20 70 61 67 65 20 31 20 28 24 31 30 30 20 2D |t page 1 ($100 -|
000037B0: 20 24 31 46 46 29 2E 20 54 68 65 72 65 0D 0A 69 | $1FF). There..i|
000037C0: 73 20 61 20 53 54 41 43 4B 20 50 4F 49 4E 54 45 |s a STACK POINTE|
000037D0: 52 20 28 53 50 29 20 77 68 69 63 68 20 61 6C 77 |R (SP) which alw|
000037E0: 61 79 73 0D 0A 70 6F 69 6E 74 73 20 74 6F 20 74 |ays..points to t|
000037F0: 68 65 20 74 6F 70 20 6F 66 20 74 68 65 20 73 74 |he top of the st|
00003800: 61 63 6B 2E 20 49 74 20 69 73 0D 0A 61 20 6F 6E |ack. It is..a on|
00003810: 65 20 62 79 74 65 20 76 61 6C 75 65 20 61 6E 64 |e byte value and|
00003820: 20 69 73 20 75 73 65 64 20 69 6E 20 61 0D 0A 73 | is used in a..s|
00003830: 69 6D 69 6C 61 72 20 77 61 79 20 74 6F 20 69 6E |imilar way to in|
00003840: 64 65 78 65 64 20 61 64 64 72 65 73 73 69 6E 67 |dexed addressing|
00003850: 20 77 68 65 72 65 0D 0A 74 68 65 20 73 74 61 63 | where..the stac|
00003860: 6B 20 70 6F 69 6E 74 65 72 20 69 73 20 61 64 64 |k pointer is add|
00003870: 65 64 20 74 6F 20 24 31 30 30 20 74 6F 0D 0A 67 |ed to $100 to..g|
00003880: 69 76 65 20 61 6E 20 61 64 64 72 65 73 73 20 74 |ive an address t|
00003890: 68 61 74 20 70 6F 69 6E 74 73 20 74 6F 20 61 20 |hat points to a |
000038A0: 64 61 74 61 0D 0A 69 74 65 6D 2E 20 45 61 63 68 |data..item. Each|
000038B0: 20 74 69 6D 65 20 79 6F 75 20 50 55 53 48 20 61 | time you PUSH a|
000038C0: 6E 20 69 74 65 6D 20 28 70 75 74 20 61 6E 69 74 |n item (put anit|
000038D0: 65 6D 20 6F 6E 20 74 68 65 20 73 74 61 63 6B 29 |em on the stack)|
000038E0: 20 6F 72 20 50 55 4C 4C 20 61 6E 20 69 74 65 6D | or PULL an item|
000038F0: 0D 0A 28 72 65 6D 6F 76 65 20 61 20 64 61 74 61 |..(remove a data|
00003900: 20 69 74 65 6D 20 66 72 6F 6D 20 74 68 65 20 73 | item from the s|
00003910: 74 61 63 6B 29 2C 20 74 68 65 73 74 61 63 6B 20 |tack), thestack |
00003920: 70 6F 69 6E 74 65 72 20 69 73 20 75 70 64 61 74 |pointer is updat|
00003930: 65 64 2E 20 49 74 20 73 74 61 72 74 73 20 6F 66 |ed. It starts of|
00003940: 66 0D 0A 61 73 20 24 46 46 2C 20 70 6F 69 6E 74 |f..as $FF, point|
00003950: 69 6E 67 20 74 6F 20 24 31 46 46 2C 20 61 6E 64 |ing to $1FF, and|
00003960: 20 74 68 65 6E 20 77 68 65 6E 0D 0A 64 61 74 61 | then when..data|
00003970: 20 69 74 65 6D 73 20 61 72 65 20 61 64 64 65 64 | items are added|
00003980: 2C 20 69 74 20 64 65 63 72 65 61 73 65 73 2C 20 |, it decreases, |
00003990: 61 6E 64 20 77 68 65 6E 20 69 74 65 6D 73 20 61 |and when items a|
000039A0: 72 65 20 70 75 6C 6C 65 64 20 66 72 6F 6D 20 74 |re pulled from t|
000039B0: 68 65 20 73 74 61 63 6B 20 69 74 0D 0A 69 6E 63 |he stack it..inc|
000039C0: 72 65 61 73 65 73 2E 20 4A 75 73 74 20 6C 69 6B |reases. Just lik|
000039D0: 65 20 61 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 |e a memory locat|
000039E0: 69 6F 6E 0D 0A 74 68 65 20 73 74 61 63 6B 20 70 |ion..the stack p|
000039F0: 6F 69 6E 74 65 72 20 77 69 6C 6C 20 77 72 61 70 |ointer will wrap|
00003A00: 20 72 6F 75 6E 64 20 69 66 0D 0A 74 6F 6F 20 6D | round if..too m|
00003A10: 61 6E 79 20 69 74 65 6D 73 20 61 72 65 20 70 75 |any items are pu|
00003A20: 6C 6C 65 64 20 6F 72 20 70 75 73 68 65 64 2E FE |lled or pushed..|
00003A30: 1F 0F 02 54 48 45 20 53 54 41 43 4B 0D 0A 0A 20 |...THE STACK... |
00003A40: 41 6C 6C 20 70 72 6F 67 72 61 6D 73 20 75 73 65 |All programs use|
00003A50: 64 20 77 69 74 68 20 74 68 69 73 20 73 69 6D 75 |d with this simu|
00003A60: 6C 61 74 6F 72 0D 0A 61 72 65 20 73 74 6F 72 65 |lator..are store|
00003A70: 64 20 69 6E 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 |d in memory loca|
00003A80: 74 69 6F 6E 73 20 24 37 42 30 30 0D 0A 6F 6E 77 |tions $7B00..onw|
00003A90: 61 72 64 73 2E 20 49 74 20 74 61 6B 65 73 20 62 |ards. It takes b|
00003AA0: 65 74 77 65 65 6E 20 6F 6E 65 20 61 6E 64 20 74 |etween one and t|
00003AB0: 68 72 65 65 0D 0A 62 79 74 65 73 20 28 63 61 6C |hree..bytes (cal|
00003AC0: 6C 65 64 20 6F 70 2D 63 6F 64 65 20 62 79 74 65 |led op-code byte|
00003AD0: 73 20 69 66 20 75 73 65 64 20 66 6F 72 0D 0A 65 |s if used for..e|
00003AE0: 78 65 63 75 74 69 6F 6E 20 6F 66 20 61 20 70 72 |xecution of a pr|
00003AF0: 6F 67 72 61 6D 29 20 74 6F 20 6D 61 6B 65 20 75 |ogram) to make u|
00003B00: 70 20 61 6E 0D 0A 69 6E 73 74 72 75 63 74 69 6F |p an..instructio|
00003B10: 6E 2E 20 59 6F 75 20 63 61 6E 20 73 65 65 20 74 |n. You can see t|
00003B20: 68 65 20 61 64 64 72 65 73 73 65 73 0D 0A 61 6E |he addresses..an|
00003B30: 64 20 6F 70 2D 63 6F 64 65 20 62 79 74 65 73 20 |d op-code bytes |
00003B40: 66 6F 72 20 65 61 63 68 20 69 6E 73 74 72 75 63 |for each instruc|
00003B50: 74 69 6F 6E 0D 0A 64 69 73 70 6C 61 79 65 64 20 |tion..displayed |
00003B60: 69 66 20 79 6F 75 20 77 61 6E 74 2C 20 62 79 20 |if you want, by |
00003B70: 70 72 65 73 73 69 6E 67 20 74 68 65 0D 0A 66 75 |pressing the..fu|
00003B80: 6E 63 74 69 6F 6E 20 6B 65 79 20 6D 61 72 6B 65 |nction key marke|
00003B90: 64 20 27 66 33 27 20 77 68 65 6E 20 74 68 65 0D |d 'f3' when the.|
00003BA0: 0A 70 72 6F 67 72 61 6D 20 69 73 20 72 75 6E 6E |.program is runn|
00003BB0: 69 6E 67 2E 20 54 6F 20 72 65 76 65 72 74 20 74 |ing. To revert t|
00003BC0: 6F 20 74 68 65 0D 0A 6E 6F 72 6D 61 6C 20 6D 6F |o the..normal mo|
00003BD0: 64 65 20 70 72 65 73 73 20 27 66 33 27 20 61 67 |de press 'f3' ag|
00003BE0: 61 69 6E 2E FE 1F 0F 02 54 48 45 20 53 54 41 43 |ain.....THE STAC|
00003BF0: 4B 0D 0A 0A 20 54 68 65 20 73 74 61 63 6B 20 69 |K... The stack i|
00003C00: 73 20 70 61 72 74 69 63 75 6C 61 72 69 6C 79 20 |s particularily |
00003C10: 75 73 65 66 75 6C 20 69 6E 0D 0A 74 68 65 20 74 |useful in..the t|
00003C20: 65 6D 70 6F 72 61 72 79 20 73 74 6F 72 61 67 65 |emporary storage|
00003C30: 20 6F 66 20 64 61 74 61 2E 20 54 68 65 20 36 35 | of data. The 65|
00003C40: 30 32 0D 0A 75 73 65 73 20 69 74 20 69 74 73 65 |02..uses it itse|
00003C50: 6C 66 2E 20 48 6F 77 20 69 74 20 64 6F 65 73 20 |lf. How it does |
00003C60: 73 6F 20 77 69 6C 6C 20 62 65 0D 0A 64 69 73 63 |so will be..disc|
00003C70: 75 73 73 65 64 20 61 20 6C 69 74 74 6C 65 20 6C |ussed a little l|
00003C80: 61 74 65 72 20 6F 6E 2E 0D 0A 20 54 6F 20 6B 65 |ater on... To ke|
00003C90: 65 70 20 74 72 61 63 6B 20 6F 66 20 77 68 69 63 |ep track of whic|
00003CA0: 68 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 69 73 |h instruction is|
00003CB0: 0D 0A 62 65 69 6E 67 20 65 78 65 63 75 74 65 64 |..being executed|
00003CC0: 20 61 20 50 52 4F 47 52 41 4D 20 43 4F 55 4E 54 | a PROGRAM COUNT|
00003CD0: 45 52 20 28 50 43 29 20 69 73 75 73 65 64 2E 20 |ER (PC) isused. |
00003CE0: 54 68 69 73 20 6D 61 6B 65 73 20 73 75 72 65 20 |This makes sure |
00003CF0: 74 68 61 74 20 69 6E 73 74 72 75 63 74 69 6F 6E |that instruction|
00003D00: 73 0D 0A 61 72 65 20 65 78 65 63 75 74 65 64 20 |s..are executed |
00003D10: 69 6E 20 74 68 65 20 72 69 67 68 74 20 6F 72 64 |in the right ord|
00003D20: 65 72 20 61 6E 64 20 69 74 0D 0A 63 6F 70 65 73 |er and it..copes|
00003D30: 20 77 69 74 68 20 6A 75 6D 70 73 2C 20 62 72 61 | with jumps, bra|
00003D40: 6E 63 68 65 73 20 61 6E 64 0D 0A 73 75 62 72 6F |nches and..subro|
00003D50: 75 74 69 6E 65 73 2E 20 49 74 20 69 73 20 61 20 |utines. It is a |
00003D60: 31 36 20 62 69 74 20 6E 75 6D 62 65 72 0D 0A 63 |16 bit number..c|
00003D70: 6F 6E 74 61 69 6E 65 64 20 69 6E 73 69 64 65 20 |ontained inside |
00003D80: 74 68 65 20 36 35 30 32 2E FE 1F 0F 02 54 48 45 |the 6502.....THE|
00003D90: 20 53 54 41 43 4B 0D 0A 0A 20 41 66 74 65 72 20 | STACK... After |
00003DA0: 65 61 63 68 20 69 6E 73 74 72 75 63 74 69 6F 6E |each instruction|
00003DB0: 20 74 68 65 20 70 72 6F 67 72 61 6D 0D 0A 63 6F | the program..co|
00003DC0: 75 6E 74 65 72 20 69 73 20 75 70 64 61 74 65 64 |unter is updated|
00003DD0: 20 74 6F 20 70 6F 69 6E 74 20 74 6F 20 74 68 65 | to point to the|
00003DE0: 0D 0A 6E 65 78 74 20 69 6E 73 74 72 75 63 74 69 |..next instructi|
00003DF0: 6F 6E 20 74 6F 20 62 65 20 65 78 65 63 75 74 65 |on to be execute|
00003E00: 64 2E 4E 6F 72 6D 61 6C 6C 79 20 74 68 69 73 20 |d.Normally this |
00003E10: 6D 65 61 6E 73 20 74 68 61 74 20 74 68 65 20 70 |means that the p|
00003E20: 72 6F 67 72 61 6D 0D 0A 63 6F 75 6E 74 65 72 20 |rogram..counter |
00003E30: 69 73 20 69 6E 63 72 65 61 73 65 64 20 62 79 20 |is increased by |
00003E40: 74 68 65 20 6E 75 6D 62 65 72 20 6F 66 0D 0A 62 |the number of..b|
00003E50: 79 74 65 73 20 69 6E 20 61 6E 20 69 6E 73 74 72 |ytes in an instr|
00003E60: 75 63 74 69 6F 6E 2E 20 57 69 74 68 20 6A 75 6D |uction. With jum|
00003E70: 70 73 20 69 74 0D 0A 69 73 20 6C 6F 61 64 65 64 |ps it..is loaded|
00003E80: 20 77 69 74 68 20 61 20 63 6F 6D 70 6C 65 74 65 | with a complete|
00003E90: 20 6E 65 77 20 76 61 6C 75 65 2E 0D 0A 57 69 74 | new value...Wit|
00003EA0: 68 20 62 72 61 6E 63 68 65 73 20 28 72 65 6C 61 |h branches (rela|
00003EB0: 74 69 76 65 20 6A 75 6D 70 73 29 20 74 68 65 72 |tive jumps) ther|
00003EC0: 65 0D 0A 69 73 20 61 6E 20 6F 66 66 73 65 74 20 |e..is an offset |
00003ED0: 62 79 74 65 20 77 68 69 63 68 20 69 73 20 61 64 |byte which is ad|
00003EE0: 64 65 64 20 74 6F 20 74 68 65 0D 0A 70 72 6F 67 |ded to the..prog|
00003EF0: 72 61 6D 20 63 6F 75 6E 74 65 72 2E 20 49 74 20 |ram counter. It |
00003F00: 63 61 6E 20 61 6C 73 6F 20 62 65 20 61 0D 0A 6E |can also be a..n|
00003F10: 65 67 61 74 69 76 65 20 6E 75 6D 62 65 72 20 69 |egative number i|
00003F20: 66 20 62 69 74 20 37 20 69 73 20 73 65 74 20 28 |f bit 7 is set (|
00003F30: 75 73 69 6E 67 0D 0A 74 77 6F 27 73 20 63 6F 6D |using..two's com|
00003F40: 70 6C 65 6D 65 6E 74 29 2E 20 54 68 65 72 65 66 |plement). Theref|
00003F50: 6F 72 65 20 61 20 62 72 61 6E 63 68 0D 0A 63 61 |ore a branch..ca|
00003F60: 6E 20 6F 6E 6C 79 20 63 68 61 6E 67 65 20 74 68 |n only change th|
00003F70: 65 20 70 72 6F 67 72 61 6D 20 63 6F 75 6E 74 65 |e program counte|
00003F80: 72 20 62 79 0D 0A 31 32 37 20 66 6F 72 77 61 72 |r by..127 forwar|
00003F90: 64 73 20 6F 72 20 31 32 38 20 62 61 63 6B 77 61 |ds or 128 backwa|
00003FA0: 72 64 73 2E 20 54 68 69 73 20 69 73 20 61 6C 69 |rds. This is ali|
00003FB0: 6D 69 74 61 74 69 6F 6E 20 77 68 65 6E 20 77 72 |mitation when wr|
00003FC0: 69 74 69 6E 67 20 61 20 6C 6F 6E 67 20 70 72 6F |iting a long pro|
00003FD0: 67 72 61 6D 0D 0A 62 75 74 20 73 68 6F 75 6C 64 |gram..but should|
00003FE0: 20 6E 6F 74 20 61 66 66 65 63 74 20 79 6F 75 20 | not affect you |
00003FF0: 77 68 65 6E 20 77 72 69 74 69 6E 67 0D 0A 70 72 |when writing..pr|
00004000: 6F 67 72 61 6D 73 20 77 69 74 68 20 74 68 69 73 |ograms with this|
00004010: 20 73 69 6D 75 6C 61 74 6F 72 2E FE 1F 0F 02 54 | simulator.....T|
00004020: 48 45 20 53 54 41 43 4B 0D 0A 0A 20 4F 6E 65 20 |HE STACK... One |
00004030: 6F 66 20 74 68 65 20 77 61 79 73 20 74 68 65 20 |of the ways the |
00004040: 36 35 30 32 20 75 73 65 73 20 74 68 65 20 73 74 |6502 uses the st|
00004050: 61 63 6B 69 73 20 74 6F 20 65 6E 73 75 72 65 20 |ackis to ensure |
00004060: 74 68 61 74 20 4A 53 52 20 69 6E 73 74 72 75 63 |that JSR instruc|
00004070: 74 69 6F 6E 73 20 77 6F 72 6B 0D 0A 70 72 6F 70 |tions work..prop|
00004080: 65 72 6C 79 2C 20 61 6E 64 20 74 68 61 74 20 77 |erly, and that w|
00004090: 68 65 6E 20 61 6E 20 52 54 53 0D 0A 69 6E 73 74 |hen an RTS..inst|
000040A0: 72 75 63 74 69 6F 6E 20 69 73 20 65 78 65 63 75 |ruction is execu|
000040B0: 74 65 64 2C 20 63 6F 6E 74 72 6F 6C 20 69 73 0D |ted, control is.|
000040C0: 0A 70 61 73 73 65 64 20 74 6F 20 74 68 65 20 69 |.passed to the i|
000040D0: 6E 73 74 72 75 63 74 69 6F 6E 20 69 6D 6D 65 64 |nstruction immed|
000040E0: 69 61 74 65 6C 79 0D 0A 66 6F 6C 6C 6F 77 69 6E |iately..followin|
000040F0: 67 20 74 68 65 20 4A 53 52 20 69 6E 73 74 72 75 |g the JSR instru|
00004100: 63 74 69 6F 6E 2E 20 54 68 69 73 20 69 73 0D 0A |ction. This is..|
00004110: 64 6F 6E 65 20 62 79 20 70 75 73 68 69 6E 67 20 |done by pushing |
00004120: 74 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 |the contents of |
00004130: 74 68 65 0D 0A 70 72 6F 67 72 61 6D 20 63 6F 75 |the..program cou|
00004140: 6E 74 65 72 20 6F 6E 74 6F 20 74 68 65 20 73 74 |nter onto the st|
00004150: 61 63 6B 2E 20 54 68 69 73 0D 0A 69 73 20 61 6C |ack. This..is al|
00004160: 77 61 79 73 20 74 68 65 20 61 64 64 72 65 73 73 |ways the address|
00004170: 20 6F 66 20 74 68 65 20 6D 65 6D 6F 72 79 0D 0A | of the memory..|
00004180: 6C 6F 63 61 74 69 6F 6E 20 77 68 65 72 65 20 74 |location where t|
00004190: 68 65 20 6F 70 2D 63 6F 64 65 20 66 6F 72 20 74 |he op-code for t|
000041A0: 68 65 20 4A 53 52 0D 0A 69 6E 73 74 72 75 63 74 |he JSR..instruct|
000041B0: 69 6F 6E 20 69 73 2C 20 70 6C 75 73 20 74 77 6F |ion is, plus two|
000041C0: 2E 20 54 68 65 6E 2C 20 77 68 65 6E 0D 0A 74 68 |. Then, when..th|
000041D0: 65 20 52 54 53 20 69 6E 73 74 72 75 63 74 69 6F |e RTS instructio|
000041E0: 6E 20 69 73 20 65 78 65 63 75 74 65 64 2C 20 74 |n is executed, t|
000041F0: 68 69 73 0D 0A 31 36 20 62 69 74 20 6E 75 6D 62 |his..16 bit numb|
00004200: 65 72 20 69 73 20 74 68 65 6E 20 70 75 6C 6C 65 |er is then pulle|
00004210: 64 20 6F 66 66 20 66 72 6F 6D 0D 0A 74 68 65 20 |d off from..the |
00004220: 73 74 61 63 6B 20 61 6E 64 20 6F 6E 65 20 69 73 |stack and one is|
00004230: 20 61 64 64 65 64 20 74 6F 20 69 74 2C 20 61 6E | added to it, an|
00004240: 64 0D 0A 74 68 69 73 20 76 61 6C 75 65 20 69 73 |d..this value is|
00004250: 20 70 75 74 20 69 6E 74 6F 20 74 68 65 20 70 72 | put into the pr|
00004260: 6F 67 72 61 6D 0D 0A 63 6F 75 6E 74 65 72 2E 20 |ogram..counter. |
00004270: 54 68 69 73 20 68 61 73 20 74 68 65 20 65 66 66 |This has the eff|
00004280: 65 63 74 20 6F 66 20 74 68 65 20 6E 65 78 74 69 |ect of the nexti|
00004290: 6E 73 74 72 75 63 74 69 6F 6E 20 65 78 65 63 75 |nstruction execu|
000042A0: 74 65 64 20 62 65 69 6E 67 20 74 68 65 20 6F 6E |ted being the on|
000042B0: 65 0D 0A 69 6D 6D 65 64 69 61 74 65 6C 79 20 61 |e..immediately a|
000042C0: 66 74 65 72 20 74 68 65 20 6F 72 69 67 69 6E 61 |fter the origina|
000042D0: 74 69 6E 67 20 4A 53 52 0D 0A 69 6E 73 74 72 75 |ting JSR..instru|
000042E0: 63 74 69 6F 6E 2E FE 1F 0F 02 54 48 45 20 53 54 |ction.....THE ST|
000042F0: 41 43 4B 0D 0A 0A 20 48 65 72 65 20 69 73 20 61 |ACK... Here is a|
00004300: 20 6C 69 73 74 20 6F 66 20 69 6E 73 74 72 75 63 | list of instruc|
00004310: 74 69 6F 6E 73 20 74 68 61 74 0D 0A 61 72 65 20 |tions that..are |
00004320: 61 73 73 6F 63 69 61 74 65 64 20 77 69 74 68 20 |associated with |
00004330: 74 68 65 20 73 74 61 63 6B 0D 0A 0A 82 50 48 41 |the stack....PHA|
00004340: 87 2D 20 50 55 53 48 20 41 43 43 55 4D 55 4C 41 |.- PUSH ACCUMULA|
00004350: 54 4F 52 20 4F 4E 54 4F 20 53 54 41 43 4B 0D 0A |TOR ONTO STACK..|
00004360: 0A 86 50 4C 41 87 2D 20 50 55 4C 4C 20 41 43 43 |..PLA.- PULL ACC|
00004370: 55 4D 55 4C 41 54 4F 52 20 46 52 4F 4D 20 53 54 |UMULATOR FROM ST|
00004380: 41 43 4B 0D 0A 0A 83 54 53 58 87 2D 20 54 52 41 |ACK....TSX.- TRA|
00004390: 4E 53 46 45 52 20 56 41 4C 55 45 20 4F 46 20 53 |NSFER VALUE OF S|
000043A0: 54 41 43 4B 20 50 4F 49 4E 54 45 52 0D 0A 20 20 |TACK POINTER.. |
000043B0: 20 20 20 20 20 54 4F 20 58 20 52 45 47 49 53 54 | TO X REGIST|
000043C0: 45 52 0D 0A 0A 84 54 58 53 87 2D 20 54 52 41 4E |ER....TXS.- TRAN|
000043D0: 53 46 45 52 20 56 41 4C 55 45 20 4F 46 20 58 20 |SFER VALUE OF X |
000043E0: 52 45 47 49 53 54 45 52 0D 0A 20 20 20 20 20 20 |REGISTER.. |
000043F0: 20 54 4F 20 53 54 41 43 4B 20 50 4F 49 4E 54 45 | TO STACK POINTE|
00004400: 52 0D 0A 0A 0A 41 20 64 65 6D 6F 6E 73 74 72 61 |R....A demonstra|
00004410: 74 69 6F 6E 20 70 72 6F 67 72 61 6D 20 69 73 20 |tion program is |
00004420: 67 69 76 65 6E 20 74 6F 20 73 68 6F 77 74 68 65 |given to showthe|
00004430: 20 65 66 66 65 63 74 20 6F 66 20 74 68 65 73 65 | effect of these|
00004440: 20 61 6E 64 20 74 68 65 20 4A 53 52 20 61 6E 64 | and the JSR and|
00004450: 0D 0A 52 54 53 20 69 6E 73 74 72 75 63 74 69 6F |..RTS instructio|
00004460: 6E 73 20 6F 6E 20 74 68 65 20 73 74 61 63 6B 2E |ns on the stack.|
00004470: FF 20 20 20 20 20 20 20 54 53 58 0D 20 20 20 20 |. TSX. |
00004480: 20 20 20 4A 53 52 20 4E 4F 52 45 54 0D 52 45 54 | JSR NORET.RET|
00004490: 20 20 20 20 4C 44 41 20 23 24 37 42 0D 20 20 20 | LDA #$7B. |
000044A0: 20 20 20 20 50 48 41 0D 20 20 20 20 20 20 20 4C | PHA. L|
000044B0: 44 41 20 23 24 31 32 0D 20 20 20 20 20 20 20 50 |DA #$12. P|
000044C0: 48 41 0D 20 20 20 20 20 20 20 54 53 58 0D 20 20 |HA. TSX. |
000044D0: 20 20 20 20 20 52 54 53 0D 4E 4F 52 45 54 20 20 | RTS.NORET |
000044E0: 50 4C 41 0D 20 20 20 20 20 20 20 54 53 58 0D 20 |PLA. TSX. |
000044F0: 20 20 20 20 20 20 50 4C 41 0D 20 20 20 20 20 20 | PLA. |
00004500: 20 54 53 58 0D 20 20 20 20 20 20 20 4A 4D 50 20 | TSX. JMP |
00004510: 52 45 54 0D 45 4E 44 20 20 20 20 54 53 58 0D 20 |RET.END TSX. |
00004520: 20 20 20 20 20 20 42 52 4B FF 1F 0A 02 4D 4F 52 | BRK....MOR|
00004530: 45 20 41 44 44 52 45 53 53 49 4E 47 20 4D 4F 44 |E ADDRESSING MOD|
00004540: 45 53 0D 0A 0A 53 6F 20 66 61 72 20 74 68 65 20 |ES...So far the |
00004550: 66 6F 6C 6C 6F 77 69 6E 67 20 61 64 64 72 65 73 |following addres|
00004560: 73 69 6E 67 20 6D 6F 64 65 73 0D 0A 68 61 76 65 |sing modes..have|
00004570: 20 62 65 65 6E 20 75 73 65 64 3A 0D 0A 0A 82 49 | been used:....I|
00004580: 4D 50 4C 49 45 44 0D 0A 54 68 65 73 65 20 69 6E |MPLIED..These in|
00004590: 73 74 72 75 63 74 69 6F 6E 73 20 61 72 65 20 6A |structions are j|
000045A0: 75 73 74 20 74 68 72 65 65 0D 0A 6C 65 74 74 65 |ust three..lette|
000045B0: 72 73 20 6F 6E 20 74 68 65 69 72 20 6F 77 6E 2C |rs on their own,|
000045C0: 20 70 65 72 66 6F 72 6D 69 6E 67 20 61 0D 0A 73 | performing a..s|
000045D0: 69 6D 70 6C 65 20 74 61 73 6B 2C 20 6C 69 6B 65 |imple task, like|
000045E0: 20 54 58 53 20 66 6F 72 20 65 78 61 6D 70 6C 65 | TXS for example|
000045F0: 2E 20 54 68 65 79 20 6F 6E 6C 79 20 72 65 71 75 |. They only requ|
00004600: 69 72 65 20 6F 6E 65 20 62 79 74 65 20 70 65 72 |ire one byte per|
00004610: 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E 0D 0A 0A | instruction....|
00004620: 86 41 42 53 4F 4C 55 54 45 0D 0A 54 68 65 73 65 |.ABSOLUTE..These|
00004630: 20 61 72 65 20 73 69 6D 70 6C 65 20 69 6E 73 74 | are simple inst|
00004640: 72 75 63 74 69 6F 6E 73 20 74 68 61 74 0D 0A 61 |ructions that..a|
00004650: 66 66 65 63 74 20 6D 65 6D 6F 72 79 20 6C 6F 63 |ffect memory loc|
00004660: 61 74 69 6F 6E 73 20 77 68 6F 73 65 20 61 64 64 |ations whose add|
00004670: 72 65 73 73 0D 0A 69 73 20 67 72 65 61 74 65 72 |ress..is greater|
00004680: 20 74 68 61 6E 20 32 35 35 20 28 70 61 67 65 20 | than 255 (page |
00004690: 31 20 6F 72 20 61 62 6F 76 65 29 2E 0D 0A 54 68 |1 or above)...Th|
000046A0: 72 65 65 20 62 79 74 65 73 20 61 72 65 20 75 73 |ree bytes are us|
000046B0: 65 64 20 70 65 72 20 69 6E 73 74 72 75 63 74 69 |ed per instructi|
000046C0: 6F 6E 2E FE 1F 0A 02 4D 4F 52 45 20 41 44 44 52 |on.....MORE ADDR|
000046D0: 45 53 53 49 4E 47 20 4D 4F 44 45 53 0D 0A 0A 0A |ESSING MODES....|
000046E0: 81 5A 45 52 4F 20 50 41 47 45 0D 0A 54 68 69 73 |.ZERO PAGE..This|
000046F0: 20 6D 6F 64 65 20 69 73 20 65 78 61 63 74 6C 79 | mode is exactly|
00004700: 20 74 68 65 20 73 61 6D 65 20 61 73 20 74 68 65 | the same as the|
00004710: 0D 0A 61 62 73 6F 6C 75 74 65 20 6D 6F 64 65 2C |..absolute mode,|
00004720: 20 65 78 63 65 70 74 20 74 68 61 74 20 6F 6E 6C | except that onl|
00004730: 79 20 74 77 6F 0D 0A 62 79 74 65 73 20 61 72 65 |y two..bytes are|
00004740: 20 75 73 65 64 20 70 65 72 20 69 6E 73 74 72 75 | used per instru|
00004750: 63 74 69 6F 6E 2E 20 54 68 69 73 0D 0A 69 73 20 |ction. This..is |
00004760: 62 65 63 61 75 73 65 20 74 68 65 20 4D 53 42 20 |because the MSB |
00004770: 69 73 20 61 73 73 75 6D 65 64 20 74 6F 20 62 65 |is assumed to be|
00004780: 20 30 0D 0A 61 73 20 61 6C 6C 20 6D 65 6D 6F 72 | 0..as all memor|
00004790: 79 20 6C 6F 63 61 74 69 6F 6E 73 20 75 73 69 6E |y locations usin|
000047A0: 67 20 74 68 69 73 20 66 6F 72 6D 0D 0A 6F 66 20 |g this form..of |
000047B0: 61 64 64 72 65 73 73 69 6E 67 20 61 72 65 20 6F |addressing are o|
000047C0: 6E 20 70 61 67 65 20 30 2E 0D 0A 0A 83 49 4D 4D |n page 0.....IMM|
000047D0: 45 44 49 41 54 45 0D 0A 54 68 69 73 20 6D 6F 64 |EDIATE..This mod|
000047E0: 65 20 61 6C 73 6F 20 72 65 71 75 69 72 65 73 20 |e also requires |
000047F0: 74 77 6F 20 62 79 74 65 73 20 66 6F 72 0D 0A 65 |two bytes for..e|
00004800: 61 63 68 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E |ach instruction.|
00004810: 20 49 6D 6D 65 64 69 61 74 65 20 69 73 20 77 68 | Immediate is wh|
00004820: 65 72 65 0D 0A 61 6E 20 61 63 74 75 61 6C 20 6E |ere..an actual n|
00004830: 75 6D 62 65 72 20 69 73 20 67 69 76 65 6E 20 69 |umber is given i|
00004840: 6E 73 74 65 61 64 20 6F 66 20 61 0D 0A 6D 65 6D |nstead of a..mem|
00004850: 6F 72 79 20 6C 6F 63 61 74 69 6F 6E 20 61 64 64 |ory location add|
00004860: 72 65 73 73 2E 20 54 68 65 20 27 23 27 20 73 79 |ress. The '#' sy|
00004870: 6D 62 6F 6C 0D 0A 69 73 20 75 73 65 64 20 74 6F |mbol..is used to|
00004880: 20 73 70 65 63 69 66 79 20 74 68 69 73 20 6D 6F | specify this mo|
00004890: 64 65 20 6F 66 0D 0A 61 64 64 72 65 73 73 69 6E |de of..addressin|
000048A0: 67 20 77 69 74 68 20 61 73 73 65 6D 62 6C 65 72 |g with assembler|
000048B0: 73 20 28 69 6E 63 6C 75 64 69 6E 67 0D 0A 74 68 |s (including..th|
000048C0: 69 73 20 6F 6E 65 29 2E FE 1F 0A 02 4D 4F 52 45 |is one).....MORE|
000048D0: 20 41 44 44 52 45 53 53 49 4E 47 20 4D 4F 44 45 | ADDRESSING MODE|
000048E0: 53 0D 0A 0A 81 41 42 53 4F 4C 55 54 45 2C 59 0D |S....ABSOLUTE,Y.|
000048F0: 0A 54 68 69 73 20 69 73 20 74 68 65 20 73 61 6D |.This is the sam|
00004900: 65 20 61 73 20 61 62 73 6F 6C 75 74 65 20 61 64 |e as absolute ad|
00004910: 64 72 65 73 73 69 6E 67 20 65 78 63 65 70 74 20 |dressing except |
00004920: 74 68 61 74 20 74 68 65 20 63 6F 6E 74 65 6E 74 |that the content|
00004930: 73 20 6F 66 20 74 68 65 20 59 0D 0A 72 65 67 69 |s of the Y..regi|
00004940: 73 74 65 72 20 61 72 65 20 61 64 64 65 64 20 74 |ster are added t|
00004950: 6F 20 74 68 65 20 73 70 65 63 69 66 69 65 64 0D |o the specified.|
00004960: 0A 61 64 64 72 65 73 73 20 74 6F 20 67 69 76 65 |.address to give|
00004970: 20 61 20 72 65 73 75 6C 74 69 6E 67 20 61 64 64 | a resulting add|
00004980: 72 65 73 73 20 6F 66 0D 0A 61 20 6D 65 6D 6F 72 |ress of..a memor|
00004990: 79 20 6C 6F 63 61 74 69 6F 6E 2E 0D 0A 0A 83 41 |y location.....A|
000049A0: 42 53 4F 4C 55 54 45 2C 58 0D 0A 54 68 69 73 20 |BSOLUTE,X..This |
000049B0: 69 73 20 74 68 65 20 73 61 6D 65 20 61 73 20 41 |is the same as A|
000049C0: 42 53 4F 4C 55 54 45 2C 59 0D 0A 61 64 64 72 65 |BSOLUTE,Y..addre|
000049D0: 73 73 69 6E 67 20 65 78 63 65 70 74 20 74 68 65 |ssing except the|
000049E0: 20 58 20 72 65 67 69 73 74 65 72 20 69 73 0D 0A | X register is..|
000049F0: 61 64 64 65 64 20 69 6E 73 74 65 61 64 20 6F 66 |added instead of|
00004A00: 20 74 68 65 20 59 20 72 65 67 69 73 74 65 72 2E | the Y register.|
00004A10: FE 1F 0A 02 4D 4F 52 45 20 41 44 44 52 45 53 53 |....MORE ADDRESS|
00004A20: 49 4E 47 20 4D 4F 44 45 53 0D 0A 0A 82 5A 45 52 |ING MODES....ZER|
00004A30: 4F 20 50 41 47 45 2C 59 0D 0A 54 68 69 73 20 69 |O PAGE,Y..This i|
00004A40: 73 20 74 68 65 20 73 61 6D 65 20 61 73 20 41 42 |s the same as AB|
00004A50: 53 4F 4C 55 54 45 2C 59 0D 0A 65 78 63 65 70 74 |SOLUTE,Y..except|
00004A60: 20 74 68 61 74 20 61 20 7A 65 72 6F 20 70 61 67 | that a zero pag|
00004A70: 65 20 61 64 64 72 65 73 73 20 69 73 0D 0A 67 69 |e address is..gi|
00004A80: 76 65 6E 20 61 6E 64 20 74 68 65 20 69 6E 73 74 |ven and the inst|
00004A90: 72 75 63 74 69 6F 6E 20 6F 6E 6C 79 20 74 61 6B |ruction only tak|
00004AA0: 65 73 0D 0A 74 77 6F 20 62 79 74 65 73 20 61 73 |es..two bytes as|
00004AB0: 20 6F 70 70 6F 73 65 64 20 74 6F 20 74 68 72 65 | opposed to thre|
00004AC0: 65 20 6E 65 65 64 65 64 0D 0A 62 79 20 41 42 53 |e needed..by ABS|
00004AD0: 4F 4C 55 54 45 2C 59 20 61 64 64 72 65 73 73 69 |OLUTE,Y addressi|
00004AE0: 6E 67 2E 0D 0A 0A 81 5A 45 52 4F 20 50 41 47 45 |ng.....ZERO PAGE|
00004AF0: 2C 58 0D 0A 54 68 69 73 20 69 73 20 74 68 65 20 |,X..This is the |
00004B00: 73 61 6D 65 20 61 73 20 5A 45 52 4F 20 50 41 47 |same as ZERO PAG|
00004B10: 45 2C 59 20 66 6F 72 6D 0D 0A 6F 66 20 61 64 64 |E,Y form..of add|
00004B20: 72 65 73 73 69 6E 67 20 65 78 63 65 70 74 20 74 |ressing except t|
00004B30: 68 65 20 58 20 72 65 67 69 73 74 65 72 20 69 73 |he X register is|
00004B40: 0D 0A 75 73 65 64 20 69 6E 73 74 65 61 64 20 6F |..used instead o|
00004B50: 66 20 74 68 65 20 59 20 72 65 67 69 73 74 65 72 |f the Y register|
00004B60: 2E 20 54 68 69 73 0D 0A 6D 6F 64 65 20 61 6C 73 |. This..mode als|
00004B70: 6F 20 6F 6E 6C 79 20 72 65 71 75 69 72 65 73 20 |o only requires |
00004B80: 74 77 6F 20 62 79 74 65 73 2E FE 1F 08 02 81 50 |two bytes......P|
00004B90: 4F 53 54 20 49 4E 44 45 58 45 44 20 41 44 44 52 |OST INDEXED ADDR|
00004BA0: 45 53 53 49 4E 47 0D 0A 0A 20 54 68 69 73 20 6D |ESSING... This m|
00004BB0: 6F 64 65 20 6F 66 20 61 64 64 72 65 73 73 69 6E |ode of addressin|
00004BC0: 67 20 69 73 20 76 65 72 79 20 75 73 65 66 75 6C |g is very useful|
00004BD0: 20 69 6E 64 65 65 64 2E 20 41 6E 20 65 78 61 6D | indeed. An exam|
00004BE0: 70 6C 65 20 6F 66 20 75 73 69 6E 67 20 74 68 69 |ple of using thi|
00004BF0: 73 20 6D 6F 64 65 0D 0A 6F 66 20 61 64 64 72 65 |s mode..of addre|
00004C00: 73 73 69 6E 67 20 69 73 20 53 54 41 20 28 37 38 |ssing is STA (78|
00004C10: 29 2C 59 2E 20 57 68 65 6E 0D 0A 74 68 69 73 20 |),Y. When..this |
00004C20: 69 6E 73 74 72 75 63 74 69 6F 6E 20 69 73 20 65 |instruction is e|
00004C30: 78 65 63 75 74 65 64 2C 20 74 68 65 20 36 35 30 |xecuted, the 650|
00004C40: 32 0D 0A 77 69 6C 6C 20 6C 6F 6F 6B 20 75 70 20 |2..will look up |
00004C50: 6C 6F 63 61 74 69 6F 6E 73 20 37 38 20 61 6E 64 |locations 78 and|
00004C60: 20 37 39 20 69 6E 20 7A 65 72 6F 70 61 67 65 2E | 79 in zeropage.|
00004C70: 20 4C 6F 63 61 74 69 6F 6E 20 37 38 20 77 69 6C | Location 78 wil|
00004C80: 6C 20 66 6F 72 6D 20 74 68 65 20 4C 53 42 20 6F |l form the LSB o|
00004C90: 66 0D 0A 74 68 65 20 61 64 64 72 65 73 73 20 61 |f..the address a|
00004CA0: 6E 64 20 6C 6F 63 61 74 69 6F 6E 20 37 39 20 77 |nd location 79 w|
00004CB0: 69 6C 6C 20 66 6F 72 6D 0D 0A 74 68 65 20 4D 53 |ill form..the MS|
00004CC0: 42 20 6F 66 20 74 68 65 20 61 64 64 72 65 73 73 |B of the address|
00004CD0: 2E 20 54 68 65 72 65 66 6F 72 65 20 69 66 0D 0A |. Therefore if..|
00004CE0: 6C 6F 63 61 74 69 6F 6E 20 37 38 20 77 65 72 65 |location 78 were|
00004CF0: 20 74 6F 20 68 6F 6C 64 20 68 65 78 20 31 33 20 | to hold hex 13 |
00004D00: 61 6E 64 0D 0A 6C 6F 63 61 74 69 6F 6E 20 37 39 |and..location 79|
00004D10: 20 77 65 72 65 20 74 6F 20 68 6F 6C 64 20 68 65 | were to hold he|
00004D20: 78 20 32 46 20 77 68 65 6E 0D 0A 74 68 65 20 70 |x 2F when..the p|
00004D30: 72 6F 67 72 61 6D 20 77 61 73 20 72 75 6E 6E 69 |rogram was runni|
00004D40: 6E 67 20 74 68 65 6E 20 74 68 65 0D 0A 72 65 73 |ng then the..res|
00004D50: 75 6C 74 69 6E 67 20 61 64 64 72 65 73 73 20 6F |ulting address o|
00004D60: 66 20 74 68 65 20 6D 65 6D 6F 72 79 20 6C 6F 63 |f the memory loc|
00004D70: 61 74 69 6F 6E 77 6F 75 6C 64 20 62 65 20 68 65 |ationwould be he|
00004D80: 78 20 32 46 31 33 2E 20 41 66 74 65 72 20 74 68 |x 2F13. After th|
00004D90: 69 73 20 61 64 64 72 65 73 73 0D 0A 68 61 73 20 |is address..has |
00004DA0: 62 65 65 6E 20 63 61 6C 63 75 6C 61 74 65 64 20 |been calculated |
00004DB0: 74 68 65 20 59 20 72 65 67 69 73 74 65 72 20 69 |the Y register i|
00004DC0: 73 0D 0A 61 64 64 65 64 20 74 6F 20 69 74 20 74 |s..added to it t|
00004DD0: 6F 20 66 6F 72 6D 20 74 68 65 20 66 69 6E 61 6C |o form the final|
00004DE0: 20 61 64 64 72 65 73 73 2E 0D 0A 53 6F 20 69 66 | address...So if|
00004DF0: 20 74 68 65 20 59 20 72 65 67 69 73 74 65 72 20 | the Y register |
00004E00: 68 65 6C 64 20 35 20 77 68 65 6E 20 74 68 65 0D |held 5 when the.|
00004E10: 0A 36 35 30 32 20 74 72 69 65 64 20 74 6F 20 65 |.6502 tried to e|
00004E20: 78 65 63 75 74 65 20 74 68 65 20 61 62 6F 76 65 |xecute the above|
00004E30: 0D 0A 69 6E 73 74 72 75 63 74 69 6F 6E 2C 20 74 |..instruction, t|
00004E40: 68 65 20 36 35 30 32 20 77 6F 75 6C 64 20 73 74 |he 6502 would st|
00004E50: 6F 72 65 20 74 68 65 0D 0A 61 63 63 75 6D 75 6C |ore the..accumul|
00004E60: 61 74 6F 72 20 61 74 20 6D 65 6D 6F 72 79 20 6C |ator at memory l|
00004E70: 6F 63 61 74 69 6F 6E 20 68 65 78 20 32 46 31 38 |ocation hex 2F18|
00004E80: 2E FE 1F 03 02 82 50 52 45 2D 49 4E 44 45 58 45 |......PRE-INDEXE|
00004E90: 44 20 49 4E 44 49 52 45 43 54 20 41 44 44 52 45 |D INDIRECT ADDRE|
00004EA0: 53 53 49 4E 47 0D 0A 54 68 69 73 20 69 73 20 61 |SSING..This is a|
00004EB0: 20 76 65 72 79 20 72 61 72 65 6C 79 20 75 73 65 | very rarely use|
00004EC0: 64 20 66 6F 72 6D 20 6F 66 0D 0A 61 64 64 72 65 |d form of..addre|
00004ED0: 73 73 69 6E 67 2E 20 49 74 20 77 69 6C 6C 20 62 |ssing. It will b|
00004EE0: 65 20 64 65 73 63 72 69 62 65 64 20 68 65 72 65 |e described here|
00004EF0: 0D 0A 66 6F 72 20 63 6F 6D 70 6C 65 74 65 6E 65 |..for completene|
00004F00: 73 73 2E 20 54 68 65 20 69 6E 73 74 72 75 63 74 |ss. The instruct|
00004F10: 69 6F 6E 0D 0A 4C 44 41 20 28 34 35 2C 58 29 20 |ion..LDA (45,X) |
00004F20: 77 69 6C 6C 20 62 65 20 75 73 65 64 20 61 73 20 |will be used as |
00004F30: 61 6E 20 65 78 61 6D 70 6C 65 0D 0A 74 6F 20 65 |an example..to e|
00004F40: 78 70 6C 61 69 6E 20 74 68 69 73 20 66 6F 72 6D |xplain this form|
00004F50: 20 6F 66 20 61 64 64 72 65 73 73 69 6E 67 2E 0D | of addressing..|
00004F60: 0A 57 68 61 74 65 76 65 72 20 69 73 20 63 6F 6E |.Whatever is con|
00004F70: 74 61 69 6E 65 64 20 69 6E 20 74 68 65 20 58 20 |tained in the X |
00004F80: 72 65 67 69 73 74 65 72 0D 0A 61 74 20 74 68 65 |register..at the|
00004F90: 20 74 69 6D 65 20 6F 66 20 65 78 65 63 75 74 69 | time of executi|
00004FA0: 6F 6E 20 69 73 20 61 64 64 65 64 20 74 6F 20 74 |on is added to t|
00004FB0: 68 65 7A 65 72 6F 20 70 61 67 65 20 61 64 64 72 |hezero page addr|
00004FC0: 65 73 73 20 69 6E 20 74 68 65 20 69 6E 73 74 72 |ess in the instr|
00004FD0: 75 63 74 69 6F 6E 2C 20 69 6E 74 68 69 73 20 63 |uction, inthis c|
00004FE0: 61 73 65 20 34 35 2E 20 53 6F 20 69 66 20 58 20 |ase 45. So if X |
00004FF0: 63 6F 6E 74 61 69 6E 65 64 20 32 30 0D 0A 77 68 |contained 20..wh|
00005000: 65 6E 20 74 68 65 20 70 72 6F 67 72 61 6D 20 69 |en the program i|
00005010: 73 20 72 75 6E 6E 69 6E 67 2C 20 74 68 65 20 66 |s running, the f|
00005020: 69 6E 61 6C 0D 0A 7A 65 72 6F 20 70 61 67 65 20 |inal..zero page |
00005030: 61 64 64 72 65 73 73 20 69 73 20 36 35 2E 20 54 |address is 65. T|
00005040: 68 69 73 20 6C 6F 63 61 74 69 6F 6E 0D 0A 74 68 |his location..th|
00005050: 65 6E 20 66 6F 72 6D 73 20 74 68 65 20 4C 53 42 |en forms the LSB|
00005060: 20 6F 66 20 74 68 65 20 66 69 6E 61 6C 20 61 64 | of the final ad|
00005070: 64 72 65 73 73 0D 0A 61 6E 64 20 6C 6F 63 61 74 |dress..and locat|
00005080: 69 6F 6E 20 36 36 20 66 6F 72 6D 73 20 74 68 65 |ion 66 forms the|
00005090: 20 4D 53 42 20 6F 66 20 74 68 65 0D 0A 66 69 6E | MSB of the..fin|
000050A0: 61 6C 20 61 64 64 72 65 73 73 2E 20 54 68 65 72 |al address. Ther|
000050B0: 65 66 6F 72 65 20 69 66 20 58 20 63 6F 6E 74 61 |efore if X conta|
000050C0: 69 6E 65 64 0D 0A 35 20 77 68 65 6E 20 74 68 65 |ined..5 when the|
000050D0: 20 70 72 6F 67 72 61 6D 20 77 61 73 20 72 75 6E | program was run|
000050E0: 6E 69 6E 67 20 61 6E 64 0D 0A 6C 6F 63 61 74 69 |ning and..locati|
000050F0: 6F 6E 20 36 35 20 63 6F 6E 74 61 69 6E 65 64 20 |on 65 contained |
00005100: 68 65 78 20 45 32 20 61 6E 64 0D 0A 6C 6F 63 61 |hex E2 and..loca|
00005110: 74 69 6F 6E 20 36 36 20 63 6F 6E 74 61 69 6E 65 |tion 66 containe|
00005120: 64 20 68 65 78 20 41 31 20 74 68 65 6E 20 74 68 |d hex A1 then th|
00005130: 65 0D 0A 61 63 63 75 6D 75 6C 61 74 6F 72 20 77 |e..accumulator w|
00005140: 69 6C 6C 20 62 65 20 6C 6F 61 64 65 64 20 77 69 |ill be loaded wi|
00005150: 74 68 20 74 68 65 0D 0A 63 6F 6E 74 65 6E 74 73 |th the..contents|
00005160: 20 6F 66 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 | of memory locat|
00005170: 69 6F 6E 20 41 31 45 32 20 69 6E 20 74 68 65 0D |ion A1E2 in the.|
00005180: 0A 61 62 6F 76 65 20 65 78 61 6D 70 6C 65 2E FE |.above example..|
00005190: 1F 0A 02 4D 4F 52 45 20 41 44 44 52 45 53 53 49 |...MORE ADDRESSI|
000051A0: 4E 47 20 4D 4F 44 45 53 0D 0A 82 49 4E 44 49 52 |NG MODES...INDIR|
000051B0: 45 43 54 0D 0A 0A 20 54 68 69 73 20 66 6F 72 6D |ECT... This form|
000051C0: 20 6F 66 20 61 64 64 72 65 73 73 69 6E 67 20 69 | of addressing i|
000051D0: 73 20 4E 4F 54 0D 0A 73 75 70 70 6F 72 74 65 64 |s NOT..supported|
000051E0: 20 62 79 20 74 68 65 20 73 69 6D 75 6C 61 74 6F | by the simulato|
000051F0: 72 2E 20 48 6F 77 65 76 65 72 2C 20 69 74 0D 0A |r. However, it..|
00005200: 77 6F 75 6C 64 20 62 65 20 73 75 70 70 6F 72 74 |would be support|
00005210: 65 64 20 62 79 20 61 20 6E 6F 72 6D 61 6C 0D 0A |ed by a normal..|
00005220: 61 73 73 65 6D 62 6C 65 72 2E 20 54 68 65 72 65 |assembler. There|
00005230: 20 69 73 20 6F 6E 6C 79 20 6F 6E 65 20 69 6E 73 | is only one ins|
00005240: 74 72 75 63 74 69 6F 6E 74 68 61 74 20 75 73 65 |tructionthat use|
00005250: 73 20 69 6E 64 69 72 65 63 74 20 61 64 64 72 65 |s indirect addre|
00005260: 73 73 69 6E 67 20 61 6E 64 20 74 68 61 74 0D 0A |ssing and that..|
00005270: 69 73 20 4A 4D 50 20 28 78 78 78 78 29 2E 20 54 |is JMP (xxxx). T|
00005280: 68 69 73 20 77 69 6C 6C 20 74 61 6B 65 0D 0A 74 |his will take..t|
00005290: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 6D |he contents of m|
000052A0: 65 6D 6F 72 79 20 6C 6F 63 61 74 69 6F 6E 20 78 |emory location x|
000052B0: 78 78 78 0D 0A 61 6E 64 20 74 68 61 74 20 77 69 |xxx..and that wi|
000052C0: 6C 6C 20 66 6F 72 6D 20 74 68 65 20 4C 53 42 20 |ll form the LSB |
000052D0: 6F 66 20 74 68 65 20 4A 4D 50 0D 0A 61 64 64 72 |of the JMP..addr|
000052E0: 65 73 73 2E 20 54 68 65 6E 20 74 68 65 20 63 6F |ess. Then the co|
000052F0: 6E 74 65 6E 74 73 20 6F 66 20 6D 65 6D 6F 72 79 |ntents of memory|
00005300: 0D 0A 6C 6F 63 61 74 69 6F 6E 20 78 78 78 78 2B |..location xxxx+|
00005310: 31 20 66 6F 72 6D 73 20 74 68 65 20 4D 53 42 20 |1 forms the MSB |
00005320: 6F 66 20 74 68 65 0D 0A 4A 4D 50 20 61 64 64 72 |of the..JMP addr|
00005330: 65 73 73 2E 20 54 68 65 20 70 72 6F 67 72 61 6D |ess. The program|
00005340: 20 63 6F 75 6E 74 65 72 20 69 73 20 74 68 65 6E | counter is then|
00005350: 6C 6F 61 64 65 64 20 77 69 74 68 20 74 68 65 20 |loaded with the |
00005360: 4A 4D 50 20 61 64 64 72 65 73 73 20 63 61 75 73 |JMP address caus|
00005370: 69 6E 67 0D 0A 74 68 65 20 6E 65 78 74 20 69 6E |ing..the next in|
00005380: 73 74 72 75 63 74 69 6F 6E 20 74 6F 20 62 65 20 |struction to be |
00005390: 65 78 65 63 75 74 65 64 2C 20 74 68 65 69 6E 73 |executed, theins|
000053A0: 74 72 75 63 74 69 6F 6E 20 68 65 6C 64 20 69 6E |truction held in|
000053B0: 20 74 68 65 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 | the memory loca|
000053C0: 74 69 6F 6E 0D 0A 70 6F 69 6E 74 65 64 20 74 6F |tion..pointed to|
000053D0: 20 62 79 20 78 78 78 78 2E FE 1F 0A 02 4D 4F 52 | by xxxx.....MOR|
000053E0: 45 20 41 44 44 52 45 53 53 49 4E 47 20 4D 4F 44 |E ADDRESSING MOD|
000053F0: 45 53 0D 0A 0A 43 6F 6E 73 69 64 65 72 20 74 68 |ES...Consider th|
00005400: 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 70 72 6F 67 |e following prog|
00005410: 72 61 6D 3A 0D 0A 0A 4C 44 41 20 23 39 0D 0A 53 |ram:...LDA #9..S|
00005420: 54 41 20 33 32 30 0D 0A 4C 44 41 20 23 32 0D 0A |TA 320..LDA #2..|
00005430: 53 54 41 20 33 32 31 0D 0A 4A 4D 50 20 28 33 32 |STA 321..JMP (32|
00005440: 30 29 0D 0A 0A 41 6C 74 68 6F 75 67 68 20 74 68 |0)...Although th|
00005450: 69 73 20 70 72 6F 67 72 61 6D 20 77 69 6C 6C 20 |is program will |
00005460: 6E 6F 74 20 77 6F 72 6B 20 6F 6E 0D 0A 74 68 69 |not work on..thi|
00005470: 73 20 73 69 6D 75 6C 61 74 6F 72 2C 20 69 74 20 |s simulator, it |
00005480: 77 6F 75 6C 64 20 62 65 20 61 73 73 65 6D 62 6C |would be assembl|
00005490: 65 64 0D 0A 61 6E 64 20 72 75 6E 20 6F 6E 20 61 |ed..and run on a|
000054A0: 20 6E 6F 72 6D 61 6C 20 61 73 73 65 6D 62 6C 65 | normal assemble|
000054B0: 72 20 61 6E 64 20 36 35 30 32 2E 0D 0A 54 68 69 |r and 6502...Thi|
000054C0: 73 20 70 72 6F 67 72 61 6D 20 77 6F 75 6C 64 20 |s program would |
000054D0: 68 61 76 65 20 74 68 65 20 65 66 66 65 63 74 20 |have the effect |
000054E0: 6F 66 0D 0A 6C 6F 61 64 69 6E 67 20 74 68 65 20 |of..loading the |
000054F0: 70 72 6F 67 72 61 6D 20 63 6F 75 6E 74 65 72 20 |program counter |
00005500: 77 69 74 68 20 68 65 78 0D 0A 32 30 39 2E 20 54 |with hex..209. T|
00005510: 68 65 20 6E 65 78 74 20 69 6E 73 74 72 75 63 74 |he next instruct|
00005520: 69 6F 6E 20 74 6F 20 62 65 0D 0A 65 78 65 63 75 |ion to be..execu|
00005530: 74 65 64 20 77 6F 75 6C 64 20 62 65 20 61 74 20 |ted would be at |
00005540: 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 6F 6E 0D |memory location.|
00005550: 0A 32 30 39 2E FF 20 20 20 20 20 20 20 4C 44 41 |.209.. LDA|
00005560: 20 23 32 0D 20 20 20 20 20 20 20 53 54 41 20 33 | #2. STA 3|
00005570: 32 0D 20 20 20 20 20 20 20 4C 44 41 20 23 32 0D |2. LDA #2.|
00005580: 20 20 20 20 20 20 20 53 54 41 20 33 33 0D 41 47 | STA 33.AG|
00005590: 41 49 4E 20 20 4C 44 59 20 23 31 0D 4C 4F 4F 50 |AIN LDY #1.LOOP|
000055A0: 20 20 20 54 59 41 0D 4C 4F 4F 50 32 20 20 53 54 | TYA.LOOP2 ST|
000055B0: 41 20 28 33 32 29 2C 59 0D 20 20 20 20 20 20 20 |A (32),Y. |
000055C0: 49 4E 59 0D 20 20 20 20 20 20 20 43 50 59 20 23 |INY. CPY #|
000055D0: 31 30 0D 20 20 20 20 20 20 20 42 4E 45 20 4C 4F |10. BNE LO|
000055E0: 4F 50 0D 20 20 20 20 20 20 20 49 4E 43 20 33 33 |OP. INC 33|
000055F0: 0D 20 20 20 20 20 20 20 4C 44 41 20 33 33 0D 20 |. LDA 33. |
00005600: 20 20 20 20 20 20 43 4D 50 20 23 33 0D 20 20 20 | CMP #3. |
00005610: 20 20 20 20 42 45 51 20 41 47 41 49 4E 0D 20 20 | BEQ AGAIN. |
00005620: 20 20 20 20 20 42 52 4B FF 20 20 20 20 20 20 20 | BRK. |
00005630: 4C 44 41 20 23 24 46 31 0D 20 20 20 20 20 20 20 |LDA #$F1. |
00005640: 53 54 41 20 31 34 30 0D 20 20 20 20 20 20 20 4C |STA 140. L|
00005650: 44 41 20 23 33 0D 20 20 20 20 20 20 20 53 54 41 |DA #3. STA|
00005660: 20 31 34 31 0D 20 20 20 20 20 20 20 53 54 41 20 | 141. STA |
00005670: 31 34 39 0D 20 20 20 20 20 20 20 53 54 41 20 31 |149. STA 1|
00005680: 35 30 0D 20 20 20 20 20 20 20 4C 44 58 20 23 31 |50. LDX #1|
00005690: 30 0D 20 20 20 20 20 20 20 54 58 41 0D 20 20 20 |0. TXA. |
000056A0: 20 20 20 20 53 54 41 20 28 31 33 30 2C 58 29 0D | STA (130,X).|
000056B0: 20 20 20 20 20 20 20 4C 44 41 20 23 34 30 0D 20 | LDA #40. |
000056C0: 20 20 20 20 20 20 4C 44 58 20 23 31 39 0D 20 20 | LDX #19. |
000056D0: 20 20 20 20 20 53 54 41 20 28 31 33 30 2C 58 29 | STA (130,X)|
000056E0: 0D 20 20 20 20 20 20 20 4C 44 58 20 23 31 30 0D |. LDX #10.|
000056F0: 20 20 20 20 20 20 20 45 4F 52 20 28 31 33 30 2C | EOR (130,|
00005700: 58 29 0D 20 20 20 20 20 20 20 42 52 4B FF 1F 0D |X). BRK...|
00005710: 02 4D 4F 52 45 20 4F 4E 20 54 48 45 20 53 54 41 |.MORE ON THE STA|
00005720: 43 4B 0D 0A 0A 20 54 68 65 20 66 6C 61 67 73 20 |CK... The flags |
00005730: 61 72 65 20 68 65 6C 64 20 69 6E 20 6F 6E 65 20 |are held in one |
00005740: 62 79 74 65 20 69 6E 20 74 68 65 0D 0A 36 35 30 |byte in the..650|
00005750: 32 20 61 6E 64 20 61 72 65 20 61 72 72 61 6E 67 |2 and are arrang|
00005760: 65 64 20 74 68 75 73 3A 0D 0A 0A 42 49 54 37 20 |ed thus:...BIT7 |
00005770: 42 49 54 36 20 42 49 54 35 20 42 49 54 34 20 42 |BIT6 BIT5 BIT4 B|
00005780: 49 54 33 20 42 49 54 32 20 42 49 54 31 20 42 49 |IT3 BIT2 BIT1 BI|
00005790: 54 30 20 0A 20 4E 20 20 20 20 56 20 20 20 20 2D |T0 . N V -|
000057A0: 20 20 20 20 42 20 20 20 20 44 20 20 20 20 49 20 | B D I |
000057B0: 20 20 20 5A 20 20 20 20 43 0D 0A 0A 4E 20 2D 20 | Z C...N - |
000057C0: 4E 45 47 41 54 49 56 45 20 46 4C 41 47 0D 0A 56 |NEGATIVE FLAG..V|
000057D0: 20 2D 20 4F 56 45 52 46 4C 4F 57 20 46 4C 41 47 | - OVERFLOW FLAG|
000057E0: 0D 0A 2D 20 2D 20 4E 4F 54 20 55 53 45 44 20 28 |..- - NOT USED (|
000057F0: 45 58 50 41 4E 53 49 4F 4E 20 42 49 54 29 0D 0A |EXPANSION BIT)..|
00005800: 42 20 2D 20 42 52 45 41 4B 20 46 4C 41 47 20 28 |B - BREAK FLAG (|
00005810: 4E 4F 54 20 55 53 45 44 20 42 59 20 53 49 4D 55 |NOT USED BY SIMU|
00005820: 4C 41 54 4F 52 29 0D 0A 44 20 2D 20 44 45 43 49 |LATOR)..D - DECI|
00005830: 4D 41 4C 20 4D 4F 44 45 20 46 4C 41 47 0D 0A 49 |MAL MODE FLAG..I|
00005840: 20 2D 20 49 4E 54 45 52 52 55 50 54 20 44 49 53 | - INTERRUPT DIS|
00005850: 41 42 4C 45 20 46 4C 41 47 0D 0A 5A 20 2D 20 5A |ABLE FLAG..Z - Z|
00005860: 45 52 4F 20 46 4C 41 47 0D 0A 43 20 2D 20 43 41 |ERO FLAG..C - CA|
00005870: 52 52 59 20 46 4C 41 47 FE 1F 0D 02 4D 4F 52 45 |RRY FLAG....MORE|
00005880: 20 4F 4E 20 54 48 45 20 53 54 41 43 4B 0D 0A 0A | ON THE STACK...|
00005890: 54 68 65 72 65 66 6F 72 65 2C 20 69 66 20 79 6F |Therefore, if yo|
000058A0: 75 20 74 68 69 6E 6B 20 6F 66 20 61 6C 6C 20 74 |u think of all t|
000058B0: 68 65 20 66 6C 61 67 73 61 73 20 61 20 73 69 6E |he flagsas a sin|
000058C0: 67 6C 65 20 38 20 62 69 74 20 62 69 6E 61 72 79 |gle 8 bit binary|
000058D0: 20 6E 75 6D 62 65 72 2C 20 74 68 61 74 0D 0A 69 | number, that..i|
000058E0: 73 20 6F 6E 65 20 62 79 74 65 2C 20 65 61 63 68 |s one byte, each|
000058F0: 20 62 69 74 20 72 65 70 72 65 73 65 6E 74 73 20 | bit represents |
00005900: 6F 6E 65 0D 0A 6E 75 6D 62 65 72 20 66 72 6F 6D |one..number from|
00005910: 20 74 68 65 20 62 69 6E 61 72 79 20 63 6F 6C 75 | the binary colu|
00005920: 6D 6E 20 68 65 61 64 69 6E 67 73 2E 20 46 6F 72 |mn headings. For|
00005930: 20 65 78 61 6D 70 6C 65 2C 20 74 68 65 20 6F 76 | example, the ov|
00005940: 65 72 66 6C 6F 77 20 66 6C 61 67 20 67 69 76 65 |erflow flag give|
00005950: 73 0D 0A 74 68 65 20 6E 75 6D 62 65 72 20 36 34 |s..the number 64|
00005960: 2E FE 1F 0D 02 4D 4F 52 45 20 4F 4E 20 54 48 45 |.....MORE ON THE|
00005970: 20 53 54 41 43 4B 0D 0A 0A 20 54 68 65 20 66 6C | STACK... The fl|
00005980: 61 67 73 20 61 72 65 20 73 74 6F 72 65 64 20 69 |ags are stored i|
00005990: 6E 20 74 68 69 73 20 77 61 79 20 61 6E 64 0D 0A |n this way and..|
000059A0: 61 72 65 20 6B 65 70 74 20 74 72 61 63 6B 20 6F |are kept track o|
000059B0: 66 20 62 79 20 74 68 65 20 36 35 30 32 20 70 72 |f by the 6502 pr|
000059C0: 6F 63 65 73 73 6F 72 0D 0A 61 6E 64 20 73 74 6F |ocessor..and sto|
000059D0: 72 65 64 20 69 6E 20 77 68 61 74 20 69 73 20 6B |red in what is k|
000059E0: 6E 6F 77 6E 20 61 73 20 74 68 65 0D 0A 50 52 4F |nown as the..PRO|
000059F0: 43 45 53 53 4F 52 20 53 54 41 54 55 53 20 52 45 |CESSOR STATUS RE|
00005A00: 47 49 53 54 45 52 20 28 50 53 52 29 2E 20 41 73 |GISTER (PSR). As|
00005A10: 20 79 6F 75 0D 0A 6B 6E 6F 77 2C 20 6D 6F 73 74 | you..know, most|
00005A20: 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 20 61 66 | instructions af|
00005A30: 66 65 63 74 20 66 6C 61 67 73 2C 0D 0A 62 75 74 |fect flags,..but|
00005A40: 20 6F 6E 6C 79 20 74 77 6F 20 69 6E 73 74 72 75 | only two instru|
00005A50: 63 74 69 6F 6E 73 20 61 66 66 65 63 74 20 74 68 |ctions affect th|
00005A60: 65 0D 0A 70 72 6F 63 65 73 73 6F 72 20 73 74 61 |e..processor sta|
00005A70: 74 75 73 20 72 65 67 69 73 74 65 72 20 61 73 20 |tus register as |
00005A80: 61 20 77 68 6F 6C 65 2E 0D 0A 54 68 65 73 65 20 |a whole...These |
00005A90: 69 6E 73 74 72 75 63 74 69 6F 6E 73 20 61 72 65 |instructions are|
00005AA0: 20 50 48 50 20 61 6E 64 20 50 4C 50 2C 0D 0A 77 | PHP and PLP,..w|
00005AB0: 68 69 63 68 20 77 69 6C 6C 20 50 55 53 48 20 61 |hich will PUSH a|
00005AC0: 6E 64 20 50 55 4C 4C 20 74 68 65 20 70 72 6F 63 |nd PULL the proc|
00005AD0: 65 73 73 6F 72 0D 0A 73 74 61 74 75 73 20 72 65 |essor..status re|
00005AE0: 67 69 73 74 65 72 20 74 6F 20 61 6E 64 20 66 72 |gister to and fr|
00005AF0: 6F 6D 20 74 68 65 20 73 74 61 63 6B 2E 0D 0A 49 |om the stack...I|
00005B00: 66 20 79 6F 75 20 77 61 6E 74 65 64 20 74 6F 20 |f you wanted to |
00005B10: 73 65 74 2C 20 73 61 79 20 74 68 72 65 65 20 66 |set, say three f|
00005B20: 6C 61 67 73 0D 0A 61 74 20 6F 6E 63 65 2C 20 79 |lags..at once, y|
00005B30: 6F 75 20 63 6F 75 6C 64 20 75 73 65 20 50 48 50 |ou could use PHP|
00005B40: 20 61 6E 64 20 50 4C 50 20 74 6F 0D 0A 64 6F 20 | and PLP to..do |
00005B50: 73 6F 2E 20 48 6F 77 65 76 65 72 2C 20 74 68 65 |so. However, the|
00005B60: 72 65 20 61 72 65 20 6E 6F 20 74 72 61 6E 73 66 |re are no transf|
00005B70: 65 72 0D 0A 69 6E 73 74 72 75 63 74 69 6F 6E 73 |er..instructions|
00005B80: 20 74 6F 20 74 72 61 6E 73 66 65 72 20 62 65 74 | to transfer bet|
00005B90: 77 65 65 6E 20 74 68 65 0D 0A 61 63 63 75 6D 75 |ween the..accumu|
00005BA0: 6C 61 74 6F 72 20 61 6E 64 20 50 53 52 2C 20 73 |lator and PSR, s|
00005BB0: 6F 20 6F 74 68 65 72 0D 0A 69 6E 73 74 72 75 63 |o other..instruc|
00005BC0: 74 69 6F 6E 73 20 68 61 76 65 20 74 6F 20 62 65 |tions have to be|
00005BD0: 20 75 73 65 64 20 69 6E 0D 0A 63 6F 6E 6A 75 6E | used in..conjun|
00005BE0: 63 74 69 6F 6E 20 77 69 74 68 20 74 68 65 73 65 |ction with these|
00005BF0: 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 20 66 6F | instructions fo|
00005C00: 72 0D 0A 74 68 65 6D 20 74 6F 20 62 65 20 65 66 |r..them to be ef|
00005C10: 66 65 63 74 69 76 65 2E FE 1F 0D 02 4D 4F 52 45 |fective.....MORE|
00005C20: 20 4F 4E 20 54 48 45 20 53 54 41 43 4B 0D 0A 0A | ON THE STACK...|
00005C30: 20 41 6E 20 65 78 61 6D 70 6C 65 20 70 72 6F 67 | An example prog|
00005C40: 72 61 6D 20 64 65 6D 6F 6E 73 74 72 61 74 69 6E |ram demonstratin|
00005C50: 67 20 68 6F 77 0D 0A 74 68 65 20 70 72 6F 63 65 |g how..the proce|
00005C60: 73 73 6F 72 20 73 74 61 74 75 73 20 72 65 67 69 |ssor status regi|
00005C70: 73 74 65 72 20 69 73 20 75 73 65 64 0D 0A 69 6E |ster is used..in|
00005C80: 20 63 6F 6E 6A 75 6E 63 74 69 6F 6E 20 77 69 74 | conjunction wit|
00005C90: 68 20 74 68 65 20 73 74 61 63 6B 20 69 73 20 67 |h the stack is g|
00005CA0: 69 76 65 6E 0D 0A 74 6F 20 68 65 6C 70 20 64 65 |iven..to help de|
00005CB0: 6D 6F 6E 73 74 72 61 74 65 20 69 74 73 20 75 73 |monstrate its us|
00005CC0: 65 73 2E 0D 0A 20 4F 6E 65 20 6F 66 20 74 68 65 |es... One of the|
00005CD0: 20 6F 74 68 65 72 20 75 73 65 73 20 66 6F 72 20 | other uses for |
00005CE0: 74 68 65 73 65 0D 0A 69 6E 73 74 72 75 63 74 69 |these..instructi|
00005CF0: 6F 6E 73 20 69 73 20 74 68 65 20 74 65 6D 70 6F |ons is the tempo|
00005D00: 72 61 72 79 20 73 61 76 69 6E 67 20 6F 66 0D 0A |rary saving of..|
00005D10: 74 68 65 20 66 6C 61 67 73 2E 20 59 6F 75 20 63 |the flags. You c|
00005D20: 61 6E 20 70 75 73 68 20 74 68 65 20 76 61 6C 75 |an push the valu|
00005D30: 65 20 6F 66 20 74 68 65 50 53 52 20 6F 6E 74 6F |e of thePSR onto|
00005D40: 20 74 68 65 20 73 74 61 63 6B 20 62 79 20 75 73 | the stack by us|
00005D50: 69 6E 67 20 50 48 50 2C 0D 0A 65 78 65 63 75 74 |ing PHP,..execut|
00005D60: 65 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 20 74 |e instructions t|
00005D70: 68 61 74 20 6E 6F 72 6D 61 6C 6C 79 0D 0A 61 66 |hat normally..af|
00005D80: 66 65 63 74 20 74 68 65 20 66 6C 61 67 73 2C 20 |fect the flags, |
00005D90: 74 68 65 6E 20 62 79 20 75 73 69 6E 67 20 50 4C |then by using PL|
00005DA0: 50 20 79 6F 75 0D 0A 63 61 6E 20 72 65 73 74 6F |P you..can resto|
00005DB0: 72 65 20 74 68 65 20 66 6C 61 67 73 20 74 6F 20 |re the flags to |
00005DC0: 74 68 65 69 72 20 6F 72 69 67 69 6E 61 6C 0D 0A |their original..|
00005DD0: 76 61 6C 75 65 73 2E 20 52 65 6D 65 6D 62 65 72 |values. Remember|
00005DE0: 20 74 6F 20 70 75 6C 6C 20 61 6E 64 20 70 75 73 | to pull and pus|
00005DF0: 68 20 74 68 65 0D 0A 72 69 67 68 74 20 6E 75 6D |h the..right num|
00005E00: 62 65 72 20 6F 66 20 76 61 6C 75 65 73 2C 20 6F |ber of values, o|
00005E10: 74 68 65 72 77 69 73 65 20 74 68 65 0D 0A 73 74 |therwise the..st|
00005E20: 61 63 6B 20 77 69 6C 6C 20 62 65 63 6F 6D 65 20 |ack will become |
00005E30: 66 69 6C 6C 65 64 20 75 70 20 61 6E 64 20 27 64 |filled up and 'd|
00005E40: 69 72 74 79 27 2E FF 20 20 20 20 20 20 20 53 45 |irty'.. SE|
00005E50: 43 0D 20 20 20 20 20 20 20 54 53 58 0D 20 20 20 |C. TSX. |
00005E60: 20 20 20 20 50 48 50 0D 20 20 20 20 20 20 20 50 | PHP. P|
00005E70: 4C 41 0D 20 20 20 20 20 20 20 4F 52 41 20 23 31 |LA. ORA #1|
00005E80: 39 32 0D 20 20 20 20 20 20 20 50 48 41 0D 20 20 |92. PHA. |
00005E90: 20 20 20 20 20 50 4C 50 0D 20 20 20 20 20 20 20 | PLP. |
00005EA0: 4C 44 41 20 23 24 46 46 0D 20 20 20 20 20 20 20 |LDA #$FF. |
00005EB0: 50 48 41 0D 20 20 20 20 20 20 20 50 4C 50 0D 20 |PHA. PLP. |
00005EC0: 20 20 20 20 20 20 4C 44 41 20 23 31 0D 4C 4F 4F | LDA #1.LOO|
00005ED0: 50 20 20 20 50 48 41 0D 20 20 20 20 20 20 20 50 |P PHA. P|
00005EE0: 4C 50 0D 20 20 20 20 20 20 20 41 53 4C 20 41 0D |LP. ASL A.|
00005EF0: 20 20 20 20 20 20 20 42 43 43 20 4C 4F 4F 50 0D | BCC LOOP.|
00005F00: 20 20 20 20 20 20 20 42 52 4B FF 1F 0A 02 54 48 | BRK....TH|
00005F10: 45 20 42 49 54 20 49 4E 53 54 52 55 43 54 49 4F |E BIT INSTRUCTIO|
00005F20: 4E 0D 0A 0A 20 54 68 69 73 20 69 6E 73 74 72 75 |N... This instru|
00005F30: 63 74 69 6F 6E 20 69 73 20 75 73 65 64 20 74 6F |ction is used to|
00005F40: 20 63 68 65 63 6B 20 74 68 61 74 0D 0A 6F 6E 65 | check that..one|
00005F50: 20 6F 72 20 6D 6F 72 65 20 42 49 54 73 20 6F 66 | or more BITs of|
00005F60: 20 61 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 | a memory locati|
00005F70: 6F 6E 0D 0A 61 72 65 20 73 65 74 2E 20 54 68 65 |on..are set. The|
00005F80: 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 6F 6E | memory location|
00005F90: 20 69 73 20 65 69 74 68 65 72 0D 0A 69 6E 20 74 | is either..in t|
00005FA0: 68 65 20 61 64 64 72 65 73 73 69 6E 67 20 6D 6F |he addressing mo|
00005FB0: 64 65 73 20 61 62 73 6F 6C 75 74 65 20 6F 72 20 |des absolute or |
00005FC0: 7A 65 72 6F 70 61 67 65 2E 20 54 68 65 20 62 69 |zeropage. The bi|
00005FD0: 74 73 20 74 6F 20 62 65 20 74 65 73 74 65 64 20 |ts to be tested |
00005FE0: 61 72 65 20 69 6E 20 74 68 65 0D 0A 61 63 63 75 |are in the..accu|
00005FF0: 6D 75 6C 61 74 6F 72 2C 20 61 6E 64 20 74 68 65 |mulator, and the|
00006000: 20 6D 65 6D 6F 72 79 20 6C 6F 63 61 74 69 6F 6E | memory location|
00006010: 0D 0A 74 6F 20 62 65 20 74 65 73 74 65 64 20 61 |..to be tested a|
00006020: 67 61 69 6E 73 74 20 74 68 65 20 61 63 63 75 6D |gainst the accum|
00006030: 75 6C 61 74 6F 72 0D 0A 69 73 20 73 75 70 70 6C |ulator..is suppl|
00006040: 69 65 64 20 77 69 74 68 20 74 68 65 20 42 49 54 |ied with the BIT|
00006050: 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 69 6E 0D | instruction in.|
00006060: 0A 74 68 65 20 66 6F 72 6D 20 42 49 54 20 78 78 |.the form BIT xx|
00006070: 78 78 20 77 68 65 72 65 20 78 78 78 78 20 69 73 |xx where xxxx is|
00006080: 20 61 20 73 69 6E 67 6C 65 6D 65 6D 6F 72 79 20 | a singlememory |
00006090: 6C 6F 63 61 74 69 6F 6E 2E 20 41 66 74 65 72 20 |location. After |
000060A0: 74 68 65 20 69 6E 73 74 72 75 63 74 69 6F 6E 0D |the instruction.|
000060B0: 0A 74 68 65 20 7A 65 72 6F 20 66 6C 61 67 20 77 |.the zero flag w|
000060C0: 69 6C 6C 20 62 65 20 73 65 74 20 69 66 20 6E 6F |ill be set if no|
000060D0: 6E 65 20 6F 66 20 74 68 65 62 69 74 73 20 73 70 |ne of thebits sp|
000060E0: 65 63 69 66 69 65 64 20 62 79 20 74 68 65 20 61 |ecified by the a|
000060F0: 63 63 75 6D 75 6C 61 74 6F 72 20 61 72 65 0D 0A |ccumulator are..|
00006100: 73 65 74 2E 20 54 68 65 20 61 63 63 75 6D 75 6C |set. The accumul|
00006110: 61 74 6F 72 20 69 73 20 6C 65 66 74 20 75 6E 63 |ator is left unc|
00006120: 68 61 6E 67 65 64 0D 0A 61 66 74 65 72 20 74 68 |hanged..after th|
00006130: 65 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E 20 54 |e instruction. T|
00006140: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 0D 0A |he contents of..|
00006150: 62 69 74 20 36 20 6F 66 20 74 68 65 20 6D 65 6D |bit 6 of the mem|
00006160: 6F 72 79 20 6C 6F 63 61 74 69 6F 6E 20 61 72 65 |ory location are|
00006170: 20 70 6C 61 63 65 64 0D 0A 69 6E 20 74 68 65 20 | placed..in the |
00006180: 6F 76 65 72 66 6C 6F 77 20 66 6C 61 67 2C 20 61 |overflow flag, a|
00006190: 6E 64 20 62 69 74 20 37 20 69 73 0D 0A 70 6C 61 |nd bit 7 is..pla|
000061A0: 63 65 64 20 69 6E 20 74 68 65 20 6E 65 67 61 74 |ced in the negat|
000061B0: 69 76 65 20 66 6C 61 67 2E 20 41 6E 20 65 78 61 |ive flag. An exa|
000061C0: 6D 70 6C 65 0D 0A 70 72 6F 67 72 61 6D 20 69 73 |mple..program is|
000061D0: 20 67 69 76 65 6E 20 74 6F 20 73 68 6F 77 20 42 | given to show B|
000061E0: 49 54 20 69 6E 20 75 73 65 2E FF 20 20 20 20 20 |IT in use.. |
000061F0: 20 20 4C 44 41 20 23 24 33 30 0D 20 20 20 20 20 | LDA #$30. |
00006200: 20 20 53 54 41 20 36 0D 20 20 20 20 20 20 20 4C | STA 6. L|
00006210: 44 41 20 23 30 0D 20 20 20 20 20 20 20 53 45 43 |DA #0. SEC|
00006220: 0D 52 4F 54 41 54 45 20 52 4F 4C 20 41 0D 20 20 |.ROTATE ROL A. |
00006230: 20 20 20 20 20 42 49 54 20 36 0D 20 20 20 20 20 | BIT 6. |
00006240: 20 20 42 45 51 20 52 4F 54 41 54 45 0D 20 20 20 | BEQ ROTATE. |
00006250: 20 20 20 20 4C 44 41 20 23 24 43 30 0D 20 20 20 | LDA #$C0. |
00006260: 20 20 20 20 53 54 41 20 24 33 46 30 0D 20 20 20 | STA $3F0. |
00006270: 20 20 20 20 4C 44 41 20 23 30 0D 20 20 20 20 20 | LDA #0. |
00006280: 20 20 42 49 54 20 24 33 46 30 0D 20 20 20 20 20 | BIT $3F0. |
00006290: 20 20 4C 44 41 20 23 24 38 30 0D 20 20 20 20 20 | LDA #$80. |
000062A0: 20 20 53 54 41 20 35 36 30 0D 20 20 20 20 20 20 | STA 560. |
000062B0: 20 4C 44 41 20 23 30 0D 20 20 20 20 20 20 20 42 | LDA #0. B|
000062C0: 49 54 20 35 36 30 0D 20 20 20 20 20 20 20 42 52 |IT 560. BR|
000062D0: 4B FF 1F 0F 02 49 4E 54 45 52 52 55 50 54 53 0D |K....INTERRUPTS.|
000062E0: 0A 0A 20 41 6E 20 69 6E 74 65 72 72 75 70 74 20 |.. An interrupt |
000062F0: 69 73 20 73 6F 6D 65 74 68 69 6E 67 20 74 68 61 |is something tha|
00006300: 74 20 6F 63 63 75 72 73 0D 0A 61 66 74 65 72 20 |t occurs..after |
00006310: 61 20 66 69 78 65 64 20 61 6D 6F 75 6E 74 20 6F |a fixed amount o|
00006320: 66 20 74 69 6D 65 20 6F 72 20 61 66 74 65 72 0D |f time or after.|
00006330: 0A 61 20 63 65 72 74 61 69 6E 20 65 76 65 6E 74 |.a certain event|
00006340: 2C 20 6C 69 6B 65 20 70 72 65 73 73 69 6E 67 20 |, like pressing |
00006350: 52 55 4E 2D 53 54 4F 50 0D 0A 66 6F 72 20 65 78 |RUN-STOP..for ex|
00006360: 61 6D 70 6C 65 2E 20 57 68 65 6E 20 61 6E 20 69 |ample. When an i|
00006370: 6E 74 65 72 72 75 70 74 20 6F 63 63 75 72 73 0D |nterrupt occurs.|
00006380: 0A 74 68 65 20 36 35 30 32 20 6C 6F 6F 6B 73 20 |.the 6502 looks |
00006390: 75 70 20 77 68 61 74 20 69 73 20 6B 6E 6F 77 6E |up what is known|
000063A0: 20 61 73 20 61 6E 0D 0A 49 4E 54 45 52 52 55 50 | as an..INTERRUP|
000063B0: 54 20 56 45 43 54 4F 52 20 77 68 69 63 68 20 69 |T VECTOR which i|
000063C0: 73 20 61 6E 20 69 6E 64 69 72 65 63 74 0D 0A 6A |s an indirect..j|
000063D0: 75 6D 70 20 74 6F 20 61 20 73 6D 61 6C 6C 20 70 |ump to a small p|
000063E0: 72 6F 67 72 61 6D 20 74 68 61 74 20 68 61 6E 64 |rogram that hand|
000063F0: 6C 65 73 20 74 68 65 69 6E 74 65 72 72 75 70 74 |les theinterrupt|
00006400: 2E 20 54 68 69 73 20 69 6E 74 65 72 72 75 70 74 |. This interrupt|
00006410: 20 6D 69 67 68 74 20 62 65 20 74 6F 0D 0A 72 65 | might be to..re|
00006420: 61 64 20 74 68 65 20 6B 65 79 62 6F 61 72 64 20 |ad the keyboard |
00006430: 66 6F 72 20 65 78 61 6D 70 6C 65 2E 20 57 68 65 |for example. Whe|
00006440: 6E 20 74 68 65 0D 0A 69 6E 74 65 72 72 75 70 74 |n the..interrupt|
00006450: 20 68 61 73 20 66 69 6E 69 73 68 65 64 20 77 68 | has finished wh|
00006460: 61 74 20 69 74 20 69 73 20 64 6F 69 6E 67 0D 0A |at it is doing..|
00006470: 74 68 65 20 70 72 6F 67 72 61 6D 20 77 69 6C 6C |the program will|
00006480: 20 72 65 73 75 6D 65 20 61 73 20 6E 6F 72 6D 61 | resume as norma|
00006490: 6C 20 74 6F 0D 0A 77 68 65 72 65 20 69 74 20 6C |l to..where it l|
000064A0: 65 66 74 20 6F 66 66 20 62 65 66 6F 72 65 20 74 |eft off before t|
000064B0: 68 65 0D 0A 69 6E 74 65 72 72 75 70 74 20 6F 63 |he..interrupt oc|
000064C0: 63 75 72 72 65 64 2E FE 1F 0F 02 49 4E 54 45 52 |curred.....INTER|
000064D0: 52 55 50 54 53 0D 0A 0A 20 57 69 74 68 20 74 68 |RUPTS... With th|
000064E0: 65 20 73 69 6D 75 6C 61 74 6F 72 2C 20 79 6F 75 |e simulator, you|
000064F0: 20 63 61 6E 20 6E 6F 74 20 77 72 69 74 65 0D 0A | can not write..|
00006500: 79 6F 75 72 20 6F 77 6E 20 69 6E 74 65 72 72 75 |your own interru|
00006510: 70 74 20 72 6F 75 74 69 6E 65 73 2E 20 48 6F 77 |pt routines. How|
00006520: 65 76 65 72 2C 0D 0A 69 6E 74 65 72 72 75 70 74 |ever,..interrupt|
00006530: 73 20 61 72 65 20 6F 63 63 75 72 72 69 6E 67 20 |s are occurring |
00006540: 61 6C 6C 20 74 68 65 20 74 69 6D 65 2C 0D 0A 74 |all the time,..t|
00006550: 6F 20 63 68 65 63 6B 20 69 66 20 79 6F 75 20 70 |o check if you p|
00006560: 72 65 73 73 69 6E 67 20 61 20 6B 65 79 2E 0D 0A |ressing a key...|
00006570: 20 54 68 65 72 65 20 61 72 65 20 74 77 6F 20 74 | There are two t|
00006580: 79 70 65 73 20 6F 66 20 69 6E 74 65 72 72 75 70 |ypes of interrup|
00006590: 74 73 0D 0A 74 68 65 73 65 20 61 72 65 3A 0D 0A |ts..these are:..|
000065A0: 0A 82 4D 41 53 4B 41 42 4C 45 20 49 4E 54 45 52 |..MASKABLE INTER|
000065B0: 52 55 50 54 53 0D 0A 20 54 68 65 73 65 20 61 72 |RUPTS.. These ar|
000065C0: 65 20 69 6E 74 65 72 72 75 70 74 73 20 74 68 61 |e interrupts tha|
000065D0: 74 20 63 61 6E 20 62 65 0D 0A 63 68 61 6E 67 65 |t can be..change|
000065E0: 64 20 74 6F 20 70 6F 69 6E 74 20 74 6F 20 79 6F |d to point to yo|
000065F0: 75 72 20 6F 77 6E 20 72 6F 75 74 69 6E 65 2E 0D |ur own routine..|
00006600: 0A 42 79 20 75 73 69 6E 67 20 74 68 65 20 69 6E |.By using the in|
00006610: 73 74 72 75 63 74 69 6F 6E 20 53 45 49 20 28 53 |struction SEI (S|
00006620: 45 74 0D 0A 49 6E 74 65 72 72 75 70 74 20 64 69 |Et..Interrupt di|
00006630: 73 61 62 6C 65 20 66 6C 61 67 29 20 79 6F 75 20 |sable flag) you |
00006640: 63 61 6E 20 6D 61 73 6B 0D 0A 6F 75 74 20 6D 61 |can mask..out ma|
00006650: 73 6B 61 62 6C 65 20 69 6E 74 65 72 72 75 70 74 |skable interrupt|
00006660: 73 20 61 6C 74 6F 67 65 74 68 65 72 2C 20 73 6F |s altogether, so|
00006670: 0D 0A 74 68 61 74 20 6D 61 73 6B 61 62 6C 65 20 |..that maskable |
00006680: 69 6E 74 65 72 72 75 70 74 73 20 64 6F 20 6E 6F |interrupts do no|
00006690: 74 20 6F 63 63 75 72 0D 0A 75 6E 74 69 6C 20 61 |t occur..until a|
000066A0: 20 43 4C 49 20 28 43 4C 65 61 72 20 49 6E 74 65 | CLI (CLear Inte|
000066B0: 72 72 75 70 74 20 64 69 73 61 62 6C 65 0D 0A 66 |rrupt disable..f|
000066C0: 6C 61 67 29 20 69 6E 73 74 72 75 63 74 69 6F 6E |lag) instruction|
000066D0: 20 69 73 20 65 78 65 63 75 74 65 64 2E FE 1F 08 | is executed....|
000066E0: 02 86 4E 4F 4E 20 2D 20 4D 41 53 4B 41 42 4C 45 |..NON - MASKABLE|
000066F0: 20 49 4E 54 45 52 52 55 50 54 53 0D 0A 0A 20 54 | INTERRUPTS... T|
00006700: 68 69 73 20 74 79 70 65 20 6F 66 20 69 6E 74 65 |his type of inte|
00006710: 72 72 75 70 74 20 69 73 20 6E 6F 74 20 61 66 66 |rrupt is not aff|
00006720: 65 63 74 65 64 0D 0A 62 79 20 74 68 65 20 53 45 |ected..by the SE|
00006730: 49 20 61 6E 64 20 43 4C 49 20 69 6E 73 74 72 75 |I and CLI instru|
00006740: 63 74 69 6F 6E 73 2E 0D 0A 44 65 70 65 6E 64 69 |ctions...Dependi|
00006750: 6E 67 20 6F 6E 20 74 68 65 20 63 6F 6D 70 75 74 |ng on the comput|
00006760: 65 72 2C 20 74 68 65 73 65 0D 0A 69 6E 74 65 72 |er, these..inter|
00006770: 72 75 70 74 73 20 63 61 6E 20 73 74 69 6C 6C 20 |rupts can still |
00006780: 68 61 76 65 20 74 68 65 69 72 20 76 65 63 74 6F |have their vecto|
00006790: 72 73 0D 0A 63 68 61 6E 67 65 64 2E 0D 0A 0A 20 |rs..changed.... |
000067A0: 41 6C 6C 20 69 6E 74 65 72 72 75 70 74 73 20 65 |All interrupts e|
000067B0: 6E 64 20 69 6E 20 61 6E 20 52 54 49 20 28 52 65 |nd in an RTI (Re|
000067C0: 54 75 72 6E 0D 0A 66 72 6F 6D 20 49 6E 74 65 72 |Turn..from Inter|
000067D0: 72 75 70 74 29 20 69 6E 73 74 72 75 63 74 69 6F |rupt) instructio|
000067E0: 6E 2E 20 55 73 75 61 6C 6C 79 0D 0A 61 6E 20 69 |n. Usually..an i|
000067F0: 6E 74 65 72 72 75 70 74 20 72 6F 75 74 69 6E 65 |nterrupt routine|
00006800: 20 68 61 73 20 74 6F 20 73 61 76 65 20 74 68 65 | has to save the|
00006810: 0D 0A 72 65 67 69 73 74 65 72 73 20 69 74 20 75 |..registers it u|
00006820: 73 65 73 2C 20 62 79 20 70 75 73 68 69 6E 67 20 |ses, by pushing |
00006830: 74 68 65 6D 20 6F 6E 74 6F 0D 0A 74 68 65 20 73 |them onto..the s|
00006840: 74 61 63 6B 2E 20 57 68 65 6E 20 61 6E 20 69 6E |tack. When an in|
00006850: 74 65 72 72 75 70 74 20 6F 63 63 75 72 73 20 74 |terrupt occurs t|
00006860: 68 65 0D 0A 70 72 6F 63 65 73 73 6F 72 20 73 74 |he..processor st|
00006870: 61 74 75 73 20 72 65 67 69 73 74 65 72 20 61 6E |atus register an|
00006880: 64 20 74 68 65 20 72 65 74 75 72 6E 61 64 64 72 |d the returnaddr|
00006890: 65 73 73 20 61 72 65 20 70 75 73 68 65 64 20 6F |ess are pushed o|
000068A0: 6E 74 6F 20 74 68 65 20 73 74 61 63 6B 2E 20 57 |nto the stack. W|
000068B0: 68 65 6E 0D 0A 61 6E 20 52 54 49 20 69 6E 73 74 |hen..an RTI inst|
000068C0: 72 75 63 74 69 6F 6E 20 69 73 20 65 78 65 63 75 |ruction is execu|
000068D0: 74 65 64 20 74 68 65 20 66 6C 61 67 73 61 6E 64 |ted the flagsand|
000068E0: 20 72 65 74 75 72 6E 20 61 64 64 72 65 73 73 20 | return address |
000068F0: 61 72 65 20 70 75 6C 6C 65 64 20 66 72 6F 6D 20 |are pulled from |
00006900: 74 68 65 0D 0A 73 74 61 63 6B 20 61 6E 64 20 74 |the..stack and t|
00006910: 68 65 20 70 72 6F 67 72 61 6D 20 77 69 6C 6C 20 |he program will |
00006920: 63 6F 6E 74 69 6E 75 65 20 61 73 0D 0A 6E 6F 72 |continue as..nor|
00006930: 6D 61 6C 2E FF 1F 0F 02 57 48 41 54 20 4E 4F 57 |mal.....WHAT NOW|
00006940: 20 3F 0D 0A 0A 20 59 6F 75 20 68 61 76 65 20 6E | ?... You have n|
00006950: 6F 77 20 66 69 6E 69 73 68 65 64 20 74 68 65 20 |ow finished the |
00006960: 63 6F 75 72 73 65 20 6F 66 0D 0A 6C 65 73 73 6F |course of..lesso|
00006970: 6E 73 20 74 6F 20 74 65 61 63 68 20 79 6F 75 20 |ns to teach you |
00006980: 36 35 30 32 20 6D 61 63 68 69 6E 65 20 63 6F 64 |6502 machine cod|
00006990: 65 2E 0D 0A 54 68 65 20 6C 65 73 73 6F 6E 73 20 |e...The lessons |
000069A0: 68 61 76 65 20 62 65 65 6E 20 64 65 73 69 67 6E |have been design|
000069B0: 65 64 20 74 6F 20 74 65 61 63 68 20 6D 61 63 68 |ed to teach mach|
000069C0: 69 6E 65 20 63 6F 64 65 20 73 6F 20 74 68 61 74 |ine code so that|
000069D0: 20 69 74 20 77 69 6C 6C 20 62 65 20 74 68 65 20 | it will be the |
000069E0: 73 61 6D 65 66 6F 72 20 65 61 63 68 20 36 35 30 |samefor each 650|
000069F0: 32 20 62 61 73 65 64 20 6D 61 63 68 69 6E 65 2E |2 based machine.|
00006A00: 20 48 6F 77 65 76 65 72 2C 0D 0A 74 6F 20 6D 61 | However,..to ma|
00006A10: 6B 65 20 74 68 65 20 6D 6F 73 74 20 6F 66 20 74 |ke the most of t|
00006A20: 68 65 20 6D 61 63 68 69 6E 65 2C 20 69 74 20 69 |he machine, it i|
00006A30: 73 0D 0A 61 64 76 69 73 61 62 6C 65 20 74 6F 20 |s..advisable to |
00006A40: 75 73 65 20 77 68 61 74 20 69 73 20 63 61 6C 6C |use what is call|
00006A50: 65 64 20 61 6E 0D 0A 4F 50 45 52 41 54 49 4E 47 |ed an..OPERATING|
00006A60: 20 53 59 53 54 45 4D 2E 20 54 68 69 73 20 69 73 | SYSTEM. This is|
00006A70: 20 63 6F 6E 74 61 69 6E 65 64 20 69 6E 0D 0A 52 | contained in..R|
00006A80: 4F 4D 20 61 6E 64 20 67 69 76 65 6E 20 77 69 74 |OM and given wit|
00006A90: 68 20 74 68 65 20 63 6F 6D 70 75 74 65 72 20 66 |h the computer f|
00006AA0: 69 74 74 65 64 0D 0A 61 73 20 73 74 61 6E 64 61 |itted..as standa|
00006AB0: 72 64 2E 20 41 6E 20 6F 70 65 72 61 74 69 6E 67 |rd. An operating|
00006AC0: 20 73 79 73 74 65 6D 20 69 73 20 61 0D 0A 6D 61 | system is a..ma|
00006AD0: 63 68 69 6E 65 20 63 6F 64 65 20 70 72 6F 67 72 |chine code progr|
00006AE0: 61 6D 20 74 68 61 74 20 6C 65 74 73 20 79 6F 75 |am that lets you|
00006AF0: 20 75 73 65 0D 0A 61 64 76 61 6E 63 65 64 20 66 | use..advanced f|
00006B00: 65 61 74 75 72 65 73 20 6F 66 20 61 20 6D 61 63 |eatures of a mac|
00006B10: 68 69 6E 65 20 6C 69 6B 65 0D 0A 67 72 61 70 68 |hine like..graph|
00006B20: 69 63 73 20 61 6E 64 20 73 6F 75 6E 64 2E 20 49 |ics and sound. I|
00006B30: 74 20 61 6C 73 6F 20 68 61 6E 64 6C 65 73 0D 0A |t also handles..|
00006B40: 72 6F 75 74 69 6E 65 73 20 66 6F 72 20 72 65 61 |routines for rea|
00006B50: 64 69 6E 67 20 74 68 65 20 6B 65 79 62 6F 61 72 |ding the keyboar|
00006B60: 64 20 61 6E 64 0D 0A 75 73 69 6E 67 20 63 61 73 |d and..using cas|
00006B70: 73 65 74 74 65 73 20 61 6E 64 20 64 69 73 63 20 |settes and disc |
00006B80: 64 72 69 76 65 73 2C 20 61 73 20 77 65 6C 6C 61 |drives, as wella|
00006B90: 73 20 6D 61 6E 79 20 6F 74 68 65 72 20 66 75 6E |s many other fun|
00006BA0: 63 74 69 6F 6E 73 2E FE 1F 0F 02 57 48 41 54 20 |ctions.....WHAT |
00006BB0: 4E 4F 57 20 3F 0D 0A 0A 20 41 73 20 74 68 69 73 |NOW ?... As this|
00006BC0: 20 70 72 6F 67 72 61 6D 20 6F 6E 6C 79 20 73 69 | program only si|
00006BD0: 6D 75 6C 61 74 65 73 20 74 68 65 0D 0A 72 75 6E |mulates the..run|
00006BE0: 6E 69 6E 67 20 6F 66 20 61 20 36 35 30 32 20 70 |ning of a 6502 p|
00006BF0: 72 6F 67 72 61 6D 2C 20 79 6F 75 20 63 61 6E 6E |rogram, you cann|
00006C00: 6F 74 0D 0A 75 73 65 20 74 68 69 73 20 70 72 6F |ot..use this pro|
00006C10: 67 72 61 6D 20 69 6E 20 63 6F 6E 6A 75 6E 63 74 |gram in conjunct|
00006C20: 69 6F 6E 20 77 69 74 68 0D 0A 74 68 65 20 6F 70 |ion with..the op|
00006C30: 65 72 61 74 69 6E 67 20 73 79 73 74 65 6D 2E 20 |erating system. |
00006C40: 54 68 65 72 65 66 6F 72 65 2C 20 69 74 20 69 73 |Therefore, it is|
00006C50: 0D 0A 74 69 6D 65 20 74 6F 20 75 73 65 20 61 20 |..time to use a |
00006C60: 6D 6F 72 65 20 70 6F 77 65 72 66 75 6C 20 62 75 |more powerful bu|
00006C70: 74 20 6C 65 73 73 0D 0A 75 73 65 72 20 66 72 69 |t less..user fri|
00006C80: 65 6E 64 6C 79 20 61 73 73 65 6D 62 6C 65 72 2E |endly assembler.|
00006C90: 0D 0A 4E 6F 74 65 20 74 68 61 74 20 6D 61 63 68 |..Note that mach|
00006CA0: 69 6E 65 20 63 6F 64 65 20 70 72 6F 67 72 61 6D |ine code program|
00006CB0: 73 20 72 75 6E 20 76 65 72 79 71 75 69 63 6B 6C |s run veryquickl|
00006CC0: 79 20 61 6E 64 20 77 69 6C 6C 20 6E 6F 74 20 77 |y and will not w|
00006CD0: 61 69 74 20 66 6F 72 20 79 6F 75 20 74 6F 0D 0A |ait for you to..|
00006CE0: 70 72 65 73 73 20 74 68 65 20 72 65 74 75 72 6E |press the return|
00006CF0: 20 6B 65 79 20 6C 69 6B 65 20 74 68 69 73 20 6F | key like this o|
00006D00: 6E 65 20 64 6F 65 73 21 57 69 74 68 20 61 20 6D |ne does!With a m|
00006D10: 61 63 68 69 6E 65 20 63 6F 64 65 20 70 72 6F 67 |achine code prog|
00006D20: 72 61 6D 20 6E 6F 74 20 77 72 69 74 74 65 6E 0D |ram not written.|
00006D30: 0A 77 69 74 68 20 74 68 69 73 20 61 73 73 65 6D |.with this assem|
00006D40: 62 6C 65 72 20 74 68 65 72 65 20 69 73 20 61 20 |bler there is a |
00006D50: 63 68 61 6E 63 65 0D 0A 74 68 61 74 20 74 68 65 |chance..that the|
00006D60: 20 70 72 6F 67 72 61 6D 20 63 6F 75 6C 64 20 27 | program could '|
00006D70: 63 72 61 73 68 27 2E 0D 0A 54 68 65 72 65 66 6F |crash'...Therefo|
00006D80: 72 65 20 69 74 20 69 73 20 75 70 20 74 6F 20 79 |re it is up to y|
00006D90: 6F 75 20 74 6F 20 6D 61 6B 65 0D 0A 73 75 72 65 |ou to make..sure|
00006DA0: 20 79 6F 75 20 75 73 65 20 27 73 61 66 65 27 20 | you use 'safe' |
00006DB0: 61 72 65 61 73 20 6F 66 0D 0A 6D 65 6D 6F 72 79 |areas of..memory|
00006DC0: 2E 20 49 66 20 79 6F 75 20 61 72 65 20 65 76 65 |. If you are eve|
00006DD0: 72 20 75 6E 73 75 72 65 20 6F 66 20 61 0D 0A 69 |r unsure of a..i|
00006DE0: 6E 73 74 72 75 63 74 69 6F 6E 20 79 6F 75 20 63 |nstruction you c|
00006DF0: 61 6E 20 61 6C 77 61 79 73 20 75 73 65 20 74 68 |an always use th|
00006E00: 69 73 0D 0A 70 72 6F 67 72 61 6D 20 74 6F 20 63 |is..program to c|
00006E10: 68 65 63 6B 20 68 6F 77 20 69 74 20 77 6F 72 6B |heck how it work|
00006E20: 73 20 62 65 66 6F 72 65 0D 0A 75 73 69 6E 67 20 |s before..using |
00006E30: 69 74 20 69 6E 20 79 6F 75 72 20 6F 77 6E 20 70 |it in your own p|
00006E40: 72 6F 67 72 61 6D 2E FF 00 00 00 00 00 00 00 09 |rogram..........|
00006E50: 09 0A 0A 08 00 07 07 07 07 07 07 0F 0F 04 00 00 |................|
00006E60: 00 08 08 00 00 00 00 00 00 00 00 00 0F 0F 0B 06 |................|
00006E70: 05 0F 0F 00 00 00 00 00 00 00 00 00 09 09 0A 0A |................|
00006E80: 08 00 07 07 07 07 07 07 0D 03 0E 00 00 00 08 08 |................|
00006E90: 00 00 00 00 00 00 00 00 00 02 02 0B 06 05 02 02 |................|
00006EA0: 00 00 00 00 00 00 00 00 00 29 7F 85 B1 A2 00 A4 |.........)......|
00006EB0: 92 B1 80 9D 80 05 E8 C8 E4 B1 90 F5 84 92 60 20 |..............` |
00006EC0: A8 B6 AD 80 05 C9 3F D0 08 AD F8 04 F0 03 8D 80 |......?.........|
00006ED0: 05 8A 18 69 06 85 9A AE 80 05 E0 3F B0 04 A2 3F |...i.......?...?|
00006EE0: D0 06 E0 5B 90 02 A2 5A BC DD 04 C0 FF F0 38 BD |...[...Z......8.|
00006EF0: C1 04 18 65 8C 85 93 98 65 8D 85 94 A2 00 A5 9A |...e....e.......|
00006F00: C1 DF DD 49 FF 5F FF FF FF FF FF 00 FF DF FF FF |...I._..........|
00006F10: FF FF FF 00 FF FF FF FF FF FF FF FF FF FF FF FF |................|
00006F20: FF FF FF FF FF FF FF FF FF 00 FF FF FF FF FF FF |................|
00006F30: FF FF FF FF FF FF FF FF FF FF 00 00 49 00 FF FF |............I...|
00006F40: 5B |[ |
..!....3072: ANY.E DID IT AGAIN !...
........YA.PN.P... R..>
.8.<...EC...?.ED(.=... LO..EW........L..
,. .....P)...PJP..P.X` ... )O.....P...F
.P.. )O...P.JJ`..EW.W........). JO.... J
O..F.P.`JP.....JP...` .OI..... IO..H..P.
.# .O IO.CEW.W.CP..D.CE..D.... IO .NH..X
.... .L.. .. .N.W....... YO&...I.P. . IO
I...D.P. IO.P.`.... YO&.F.P...`..,......
....H.....HJJ`..........H.....HJJ`......
........................................
........................................
........................................
........................................
........................................
........................................
........................................
........................................
........................................
........................................
.........................XX.....).......
.......)........P. ..P... P..P)...)..0..
P F....E..D... .1 Z.L.............@..T .
5 F.L.......4.......J..................`
.. .1.. .1 .1L.......`........ ...I... .
1HP...P...... .... .1... .1... .1 %4....
I...L(.....$...I P'.. .1.. .1... .1.....
.....L.....I P.L1....I...........IA..LD.
I[..LD.L1....I'..... .4...L.....I0..LU.I
:..L1....I.P....I...N.... .1L.....I.P...
.I.....................M....J..L..L1....
I.P....I.P.L..N..L..I.P....I'P.L........
..L..I.P....I.P.L..N..L..I.P....I.P.L...
..L...G... Z... .4..........LN..H...L..L
.......{..............A.....P...........
................ Z. .5LR...... ...I... .
1HP...P...... ..L.......`....CBM80 G.X .
"XX %4...I_P.LN..I.P(...I...I.P. Z#X ...
.....I.PILC5 .. ..L.....I.P...... -. G.L
X..... .1.. .1 .1 .. .1.P... .4...P....
P...Q.. .1.. .1.. .1 ..PI... .1HP..QP...
... .. &. G.L.....*..2... N.LZ....I0..IG
..I:..IA..` ..+.H.+.....P..0.+.JPU`.:M..
.....8.0.M*..*.L.....8.7.M*..*..:M-....-
.8.0.....M*..*.LJ..-.8.7.....M*..*..:M,.
...,.8.0.M2..2.L...,.8.7.M2..2..:M+....+
.8.0.....M2..2.L...+.8.7.....M2..2.`...B
. Z..W...<...T...... W. ....`.H...I...H.
.I... W.N`.P.L_.... ...I...I... .1HP...P
....`........THE COMPLETE MACHINE CODE T
UTOR ........**************************
***** ....... BY PAUL BUNN..
... (C) 1984 NEW GENERATION SOFTWARE...
CHOOSE SELECTION BY PRESSING RETURN...WH
EN CHOICE IS MADE PRESS THE SPACE BAR...
....`........ .1.. .1... .1.. .1......I
.P... .1.. .1.B. .1.. .1.. .1.. .1 %4I.P
..B...`.I.MB.P....B.LF.I ..L...B.8....I.
.....H.... ....A...I...HP.H....H...... .
1.A.I..7 W....... S....I..... .1... I.L.
..B..`..I.MB.P....B.L ...... ... .1.. .1
... .1..I...I... .1HP...P....HLE.L......
............ W. %4I P.........`....PRESS
SPACE BAR TO CONTINUE....*..2. N..+.I0.
....M*..*..2.I..2.N+.LA..,.I0...D ..N,.L
...-.I0.... ..N-.L.....I0.... ..N..L..`.
M*..*..2.I..2.`...V.{.W.....X.X..AP.H..A
I...`.. .1.. .1. .1.W ..... .1... .1.V .
.... .1... .1. .1 .1...Y.X..AI...L... .
.... .1... .1.X.YL..H..AI....X..AL..H..A
I.P..X..AL....VEY.V..X.XL4....P.......3.
.4.........(..Z. .4._.V. .W....... .1...
.I. .1.(. .1.. .4.......N....PY...I P...
.P..P..P.I...LW. $9LX. .:.....I ..LN....
P. ..VI..<Y..P#H..P..V.....{.3...A....A.
.A...).L.. ..LY..V.I..V.WI..W`.. .1.. .1
.. .1..... .4I....P...... .1...P. %4LN..
..V. .W.....IA..L$.....I P...P. ..VI...Y
..P#H..P..V.....{.3...A....A..A...).L..
..L...Q.V. .W.....I#..LB.L.. ..VI...Y..P
?H..P..V.....{.3...A...)......I$.$ .....
..+..H..P. ...2...L..L.. ..L;. .......+.
.H..P. >..2...L...*......{.3...A....A..A
L..... .+.JP. ....I,..IG..I(..H..P.L..LP
.H...IX.PIY..L.. ....I$P,..H....+....P.
>..2.P.L.....V.!.W...). ..L}.......+.H..
.P. ..L.. ....I$P)..H....+....P. >..2..:
...V.!.W...). ..L}.......+..H..P. ..LZ..
K.V.".W...). ..L.....V.".W...). ..L_. ..
....I$.'....+..H..P. ...2..*.S.V.!.W...)
. ..L}.H....+....P. >..2...LK....V. .W..
.). ..LK. ..VI..PY..PEH..P..V.....{.3...
A.).I..2....*...{.3...A....2...{.3...A..
..A..AHHL.. ..L..`....*...{.3...A....A..
AHHL..LS.....M).....(...3.M).I..3.L....
.1.. .1.. .1..... .4I....P.L.....I......
..`.....`. .1JP.`.. .1.. .1.. .1... ...
..K. .... .1.. .1.. .1... .....K. .... .
1.! .1.. .1... .....K. .... .1.. .1.. .1
...K....*..I0 .1.. P....JJ..I0 .1.. P...
.JJJJ.0I. .1.. P....**..I0 .1.. P....J..
I0 .1.. P....JJJ..I0 .1`...I...LY... .1.
. .1.. .1... .. .... .1.. .1.. .1... ..
.... .1.. .1.. .1... .. .... .1.. .1.. .
1...)..I0 .1.. .1.. .1.. .1..,.....1 .1L
6..0 .1.. .1.. .1.. .1...JJJ..I0 .1.. .1
.. .1.. .1...JJ..I0 .1.. .1.. .1.. .1...
*..I0 .1.. .1.. .1.. .1...**..I0 .1`...
...$...............`...JJJJI....I7...LT.
I0......).I....I7...`I0...`......I...L..
.0............8.D.....N...ID8.......N...
I.8.......N..`.. .1.. .1.. .1. . .1JP.`
...I....... .1.. .1. .1.. .1...P.L......
.1.. .1. .1.. .1...P.L.... .1.. .1... .
1.. .1.. .1`.. .1.. .1... .1.. .1.. .1`.
.. .1... .1...L.1.....I(..L......I$..L..
......+.H..P. >.L.. .....+.H...P. .....
..I ..I).;I,.....P.L.....IX..L.....I)..L
...T.V.".W...)..2.P. ..L..L.....I,..L...
..IY..L...U.V.".WLA....V.".W ..VI..0Y..P
%H..P.....V..{.3...A...)..P.I.P. ..L.. .
.L{.LA.....A..AL.....V.".W ..VI...Y..P.H
..P.L..L.. ..LI..V.....{.3...A....A..A..
.)..P.I.P. ..L...).I.......{..{.3...A K.
.3...A.....{` K.8..8........{.3...A`....
..... .1. .1... .1..... .4......8.......
Q..........PN.. .1.. .1... .1.. .4. .%..
..Q.Y..P..H..P......`...I......LP.....
.1.. .1.. .1...I... .4.P.HHHHL..#$,()...
ACCUMULATOR :000.. ..X
- REGISTER :000.. ..Y -
REGISTER :000.. ..CARRY
FLAG :0 ..DECIMAL MODE :0 ..INTERRUP
TS :0 ..ZERO FLAG :0 ..NEGATIVE F
LAG:0 ..OVERFLOW FLAG:0 ..
...F3/F7 FOR MODES...'RETURN' TO RU
N ...'_' TO EDIT .........LABELS INS
TRUCTIONS.....PRESS KEYS:........ F1 .
..ASSEMBLES PROGRAM........ F3 ...FOR
MAIN MENU........ F5 ...TO ERASE PROGR
AM............... ...EDIT MODE .... ...
********* .....TYPE IN PROGRAM, USING T
HE CURSOR KEYS..TO EDIT PROGRAM......ACC
UMULATOR X-REGISTER Y-REGISTER ..
.000 .. ...000 .. ...000 ..
NEG ZERO DEC O/F CARRY I/DISABLEFLA
GS:...0 0 0 0 0 0.ERROR
- INSTRUCTION NOT RECOGNISED :.ERROR -
NUMBER BIGGER THAN 255:.ERROR - LABEL NO
T FOUND : .ERROR - RESULTING ADDRESS GRE
ATER THAN..1024 (DECIMAL) OR $400 (HEX).
BRK.CLC.CLDXCLIXCLV.DEXJDEY.INX.INYHNOP.
PHAHPHP.PLAHPLP(RTS`SEC8SED.SEIXTAX.TAY.
TSX.TXA.TXS.TYA..ASL.LSRJROL*RORJ.ADCIAN
D)CMPICPX.CPY.EORILDA.LDX.LDY ORA.SBC..A
DCEAND%ASL.BIT$CMPECPX.CPYDDECFEOREINC.L
DA.LDX.LDY.LSRFORA.ROL&RORFSBC.STA.STX.S
TY..ADCMAND-ASL.BIT,CMPMCPX.CPYLEORMINC.
LDA.LDX.LDY.LSRNORA.ROL.RORNSBC.STA.STX.
STY.DECN.ADC}AND=ASL.CMP.DEC.EOR]INC.LDA
.LDY.LSR^ORA.ROL>ROR~SBC.STA..ADCYAND9CM
PYEORYLDA.LDX.ORA.SBC.STA..ADCUAND5ASL.C
MPUDECVEORUINC.LDA.LDY.LSRVORA.ROL6RORVS
BC.STA.STY..LDX.STX..ADCAAND!CMPAEORALDA
.ORA.SBC.STA..ADCQAND1CMPQEORQLDA.ORA.SB
C.STA..JMPLJSR .BCC.BCS.BEQ.BMI0BNEPBPL.
BVCPBVSP... .1.. .1.. .1.P.... .1N.....
P.`.....(.. .".. .1.. .1.. .1.......]...
{.\.........I.....I...JL.# .....H....H..
..H.... }#H....H.... }#H....H.... }#H...
[. .#....'I...M[....P...I...L.& W(`L....
. ...I... .4HP....` ."HHLN. .........L.&
I.P.`I.P.........`I.P..]...{....{.I...`I
.P..].......{..`I.P..^.......]...{.^.`I.
P. .#...M......I...`I.P. .#...M....L.$I.
P+.....]...{.. ......H...I.......M......
I...`I.P%.....]...{.M.... ......H...I...
.....`I.P..]...{.M......I...`I.P..]...{.
M..L.$I.P..]...{... ...M....H..P.L (..`I
.P..]...{....I........Q.... .L.$` ....)L
... ....^..^...^...H).......`.........N.
.`............`.........N..`............
L.& %4HHLN. ......L.&... ...` ......L.&
......` ......L.& ......`.]. ...-.....L.
&...)....`........` ...J......)L...H)...
....` ...M.....L.& ....).H(..*......)L..
.H).......` ....^....,^.....)....H)B....
..`..8.....`..........I...........I{..L
( ...M....H..P.L (..L.&.{......N...]..I.
......N..L.&...)....`...).H( ....)......
.Q.....H)C......`...).H( ....)......J...
H)C......`N..L.&..........)M...H).......
`......L.&......`........`.... .1.. .1..
.1.. I... .1.P. %4HHLN.......`........`
...L.&N..L.& ....^.N^..^...L.&...L.&...)
.H(...)....... .......H)C......`...)....
... .8...H)C......`...).......LJ'...)...
....LJ'......L.&......L.&......L.&...)..
..` ....^..^..^...L.&...)....`...)...L.'
`...).P......N..`...)@..`...).P.`...).P.
`...)..X`...)..P`...)@PH`...8(I... .1.L"
( %4HHLN....ERROR - ADDRESS NOT FOUND...
.....I...`..(I... .1.P.8.... ..... .1..
..... .1... .1`...RESULTING ADDRESS $...
#?6{6.(..#.5.507.:%[6{6.(.:%[6{6.(.:%[6{
6.(..#.5.507..$.5.6.(.:%[6{6.(..%.6.6"6.
.#.5.5H5..$.5.5.(.:%[6{6.(.:%[6{6.(..#.5
.507..$.5.6.(.:%[6{6.(..(.8.8.(..#.5.507
.:%[6{6.(.:%[6{6.(.:%[6{6.(..#.5.507..$.
5.6.(.:%[6{6.(..%.6 6.6..#.5.507.:%[6{6.
(.:%[6{6.(.:%[6{6.(..#.5.507..$.5.6.(.:%
[6{6.(.>&.7.(.(.X%B607.(.:%[6{6.(.:%[6{6
.(..%.6.6.(.X%B607.(.A%.6.6.6.:%[6{6.(..
%.7.6.6.X%B6H5.(.A%.6.6.5.:%[6{6.(..%.6.
6.(.X%B607.(.A%.6.6.6.:%[6{6.(..(.8.8.(.
X%B607.(.:%[6{6.(.:%[6{6.(.:%[6{6.(.X%B6
07.(.A%.6.6.6.:%[6{6.(..%+7 6.6.X%B607.(
.:%[6{6.(.:%[6{6.(.:%[6{6.(.X%B607.(.A%.
6.6.6.:%[6{6.(.:%[6{6.(..%.7.507.:%[6{6.
(.:%[6{6.(.:%[6{6.(..%.7.507..%.7.6.6.:%
[6{6.(..%.6.5"6..%.7.5H5..%.7.6.5.:%[6{6
.(..&.7.(.(..%.7.507..%.7.6.6.:%[6{6.(..
'.8.8.(..%.7.507.:%[6{6.(.:%[6{6.(.:%[6{
6.(..%.7.507..%.7.6.6.:%[6{6.(.[&.6O7.6.
.%.7.507.:%[6{6.(.:%[6{6.(.:%[6{6.(..%.7
.507..%.7.6.6.:%[6{6.(..&.8.(.(.D&E7 6.6
.:%[6{6.(.:%[6{6.(.:%[6{6.(.D&E7 6.6..&.
6.6.6.:%[6{6.(.+%.7.5.6.D&E7 6D8..&.6.6.
5.:%[6{6.(.:%[6{6.(.D&E7 6.6..&.6.6.6.:%
[6{6.(..(.8.9.(.D&E7 6.6.:%[6{6.(.:%[6{6
.(.:%[6{6.(.D&E7 6.6..&.6.6.6.:%[6{6.(.X
&+7O7.6.D&E7 6.6.:%[6{6.(.:%[6{6.(.:%[6{
6.(.D&E7 6.6..&.6.6.6.:%[6{6.(.:%[6{6.(.
L%L7.5S7.:%[6{6.(.:%[6{6.(.P%L7.5S7.L%L7
.5S7.^%L7.5S7.:%[6{6.(..&.7.5.(.:%[6{6.(
..&B7.5.7.:%[6{6.(.P%L7.5S7.L%L7.5S7.^%L
7.5S7.:%[6{6.(..(.8 6.8.L%L7.5S7.:%[6{6.
(.:%[6{6.(.P%L7.5S7.L%L7.5S7.^%L7.5S7.:%
[6{6.(.H&B7.5.7.L%L7.5S7.Q&B7.5.7.:%[6{6
.(.:%[6{6.(.L%L7.5S7.:%[6{6.(.:%[6{6.(.F
%.7.5H5.B%.7.5U5.T%.7.5H5.:%[6{6.(.F%.7.
5U5.B%.7.5U5.T%.7.5U5.:%[6{6.(..'B7.5M8.
B%.7.5H5..'B7.5.8.:%[6{6.(.F%.7.5U5.B%.7
.5U5.T%.7.5U5.:%[6{6.(..'.8 6.8.B%.7.5U5
.:%[6{6.(.:%[6{6.(.F%.7.5U5.B%.7.5U5.T%.
7.5U5.:%[6{6.(.L'.6.8.6.B%.7.5U5..'B7.7.
8.:%[6{6.(.F%.7.5U5.B%.7.5U5.T%.7.5U5.:%
[6{6.(.Z'[8.5H5..'[8.5U5.:%[6{6.(.:%[6{6
.(.Z'[8.5U5..'[8.5U5.#'.7.6.(.:%[6{6.(..
'+8.5.(..'[8.5H5..'.7.5.(.:%[6{6.(.Z'[8.
5U5..'[8.5U5.#'.7.6.(.:%[6{6.(..'.8D8.(.
.'[8.5U5.:%[6{6.(.:%[6{6.(.:%[6{6.(..'[8
.5U5.#'.7.6.(.:%[6{6.(..'.668.6..'[8.5U5
.:%[6{6.(.:%[6{6.(.:%[6{6.(..'[8.5U5.#'.
7.6.(.:%[6{6.(._'[8.5H5.;'L8 6.6.:%[6{6.
(.:%[6{6.(._'[8.5U5.;'L8 6.6..'+8.6.(.:%
[6{6.(.5'+8.5.(.;'L8 6D8..'.8.(.(.:%[6{6
.(._'[8.5U5.;'L8 6.6..'+8.6.(.:%[6{6.(.U
'.8|8.(.;'L8 6.6.:%[6{6.(.:%[6{6.(.:%[6{
6.(.;'L8 6.6..'+8.6.(.:%[6{6.(..'+768.6.
;'L8 6.6.:%[6{6.(.:%[6{6.(.:%[6{6.(.;'L8
6.6..'+8.6.(.:%[6{6.(..F.H.H.H..)...X.D
...LW3.F.I.P....K....J.L.4I.P..J..K.L.4I
.P.L.3I.P....D.L.3I.P....E..K....J..$.).
%.*L.3I.P.L.2I.P'8NE..)...).*...* ....).
... .E.."... L.3I{..8.....4.J.. LA2I_P..
.LA2IA...`.C..F..E.."...&.'.C.......&I..
&.'I..'JLU2 ...'IX.'.&.)H..P..J......K..
E.. L.2..$I@.).$.%I..*.%...K..E....J...
I(. .!I..!.."I(.".#I..#L.3.E...)I..).*I.
.*.E.I(P.L.2......H.H.H` ....). .*...)HP
..*.*I.P.... ...!...# .."... . ."HP..!.#
.!I.P....J....K....!...E.. .*...$. .%...
"...#L.3I..@.F. ....).$. .*.%..."...#...
...!......)I..).*I..*HJL.3.E.ND.L.3.F..
8NF...)I@.).*I..*. I(. .!I..!.."I(.".#I.
.#.$I@.$.%I..%L.3ND....K....J....P. .4L.
3.F.H.H.H.F.I...L.1L.2.H.H .. ..X.. ]4.F
..H..G..I......F. <.....JP.LJ4H.H..F.`H.
..H..G..I.HI.P....H.`I.P....I.`I.P....G.
`.E.. )..K.. H.(P.. LA2I...`.E.."...`...
...............V...W.. ..V).I...H.(P...V
I(.V.WI..WJP.L.4...VLO4.E.. ).... `.Z...
....Z.`.. .1.. .1 .1.(. .1J......... .1
.. .1... .1... .1J........I.P... .1.. .
1.. .1.H. .1JP. -.`.W...5.. ." W. %4LN.
...END OF PROGRAM - PRESS A KEY.ACCUMULA
TOR .X REGISTER .Y REGISTER .LOGICAL OR
.WITH NUMBER .WITH MEMORY LOCATION.ARITH
METIC SHIFT LEFT .PUSH .PROCESSOR STATUS
REGISTER..ONTO STACK .MEMORY LOCATION .
BREAK - WILL STOP EXECUTION.NOT A VALID
INSTRUCTION OP-CODE..PRESS RETURN KEY TO
CONTINUE.CLEAR .CARRY .FLAG .RIGHT .LEF
T .ROTATE .LOGICAL AND ACCUMULATOR .TEST
BITS OF ACCUMULATOR AGAINST .FROM STACK
.PULL .LOGICAL SHIFT .EXCLUSIVE OR .SET
.WITH MEMORY.LOCATION.ADD WITH .INTERRUP
T DISABLE .TRANSFER .STORE .AT MEMORY LO
CATION.TO STACK POINTER.TO ACCUMULATOR.J
UMP TO SUBROUTINE.JUMP - LOAD PROGRAM CO
UNTER WITH NEW.ADDRESS.DECREMENT .LOAD .
STACK POINTER .TO X REGISTER.OVERFLOW .N
O OPERATION.INCREMENT .DECIMAL MODE .NUM
BER .SUBTRACT WITH .COMPARE .NOT EQUAL T
O ZERO (Z=0).EQUAL TO ZERO (Z=1).BRANCH
IF .POSITIVE (N=0).MINUS (N=1).RETURN FR
OM SUBROUTINE.TO Y REGISTER.SET (C=1).CL
EAR (C=0).OVERFLOW FLAG CLEAR (V=0).OVER
FLOW FLAG SET (V=1).................LN9.
. .1... .1... .1.. .4.` 69....Q.........
.I.P..Q.I P.L.9...C............C.M.... .
:....Q.P..........I.P.L.9.C..C.I.PI.....
.I...L)9`.....9.. W....Q. .1...P.." .1 %
4HHLN....ERROR - DUPLICATE LABEL FOUND "
... .1... .1.C. .1.. .4.`.. .1.. .1.(. .
1.. .4. ..LL;.....I ..LG;...IB..IJ..L.:.
...I P..N........I .BIA.XI$......I(.AI#.
.I0..L.;L";I:..........I ..I,..I0..L.;I:
..L.:`.........I ..L.;....I)..I(....P.L.
;....I)..I(....P......I$.....I)..I,..I0.
.I:...P..L.:L.;....I)..I,..I0..IG..IA..I
:..L.:HHL......I ..I,..I0.II:..IA.AIG..L
";L.:L.:.U...;.. W.LW;...THERE SHOULD BE
A SPACE BETWEEN THE..MNEMONIC AND OPERA
ND. THE HIGHLIGHTED..LINE INDICATES WHIC
H LINE HAS AN ERROR.......<.. W... .1..
.1.(. .1.. .1.. .1.. .1.. .1 %4HHLN....A
LABEL SHOULD ONLY BE UPTO SIX LETTERS L
ONG. THE HIGHLIGHTED LINE INDICATES THEL
INE WHICH HAS A LABEL TOO LONG....<.<O<.
<.=?=E=.=.=S=.=. LESSON 19 - THE STACK
....>. EXERCISE 1 FOR LESSON 19...PL
. LESSON 20 - MORE ADDRESSING MODES...
)M. EXERCISE 1 FOR LESSON 20...U].
EXERCISE 2 FOR LESSON 20...(^. LESS
ON 21 - MORE ON THE STACK...._. EXER
CISE 1 FOR LESSON 21...FF. LESSON 22 -
THE BIT INSTRUCTION....G. EXERCISE
1 FOR LESSON 22....I. LESSON 23 - INTE
RRUPTS...QJ. LESSON 24 - WHAT NOW ?...
4Q...THE STACK... THE STACK IS LIKE A PI
LE OF PLATES..STACKED ONE ON TOP OF THE
OTHER THAT..CAN BE UPTO 256 PLATES HIGH.
YOU CAN..ADD PLATES TO THE TOP OR REMOV
E PLATES..FROM THE TOP. IF YOU WANT A PL
ATE NEAR..THE BOTTOM, YOU MUST START FRO
M THE TOP..TAKING OFF ALL THE PLATES, TH
ROWING THEMAWAY UNTIL YOU GET TO THE PLA
TE THAT YOUWANT.....THE STACK... THE STA
CK IS ONE PAGE OF MEMORY THAT..RESIDES A
T PAGE 1 ($100 - $1FF). THERE..IS A STAC
K POINTER (SP) WHICH ALWAYS..POINTS TO T
HE TOP OF THE STACK. IT IS..A ONE BYTE V
ALUE AND IS USED IN A..SIMILAR WAY TO IN
DEXED ADDRESSING WHERE..THE STACK POINTE
R IS ADDED TO $100 TO..GIVE AN ADDRESS T
HAT POINTS TO A DATA..ITEM. EACH TIME YO
U PUSH AN ITEM (PUT ANITEM ON THE STACK)
OR PULL AN ITEM..(REMOVE A DATA ITEM FR
OM THE STACK), THESTACK POINTER IS UPDAT
ED. IT STARTS OFF..AS $FF, POINTING TO $
1FF, AND THEN WHEN..DATA ITEMS ARE ADDED
, IT DECREASES, AND WHEN ITEMS ARE PULLE
D FROM THE STACK IT..INCREASES. JUST LIK
E A MEMORY LOCATION..THE STACK POINTER W
ILL WRAP ROUND IF..TOO MANY ITEMS ARE PU
LLED OR PUSHED.....THE STACK... ALL PROG
RAMS USED WITH THIS SIMULATOR..ARE STORE
D IN MEMORY LOCATIONS $7B00..ONWARDS. IT
TAKES BETWEEN ONE AND THREE..BYTES (CAL
LED OP-CODE BYTES IF USED FOR..EXECUTION
OF A PROGRAM) TO MAKE UP AN..INSTRUCTIO
N. YOU CAN SEE THE ADDRESSES..AND OP-COD
E BYTES FOR EACH INSTRUCTION..DISPLAYED
IF YOU WANT, BY PRESSING THE..FUNCTION K
EY MARKED 'F3' WHEN THE..PROGRAM IS RUNN
ING. TO REVERT TO THE..NORMAL MODE PRESS
'F3' AGAIN.....THE STACK... THE STACK I
S PARTICULARILY USEFUL IN..THE TEMPORARY
STORAGE OF DATA. THE 6502..USES IT ITSE
LF. HOW IT DOES SO WILL BE..DISCUSSED A
LITTLE LATER ON... TO KEEP TRACK OF WHIC
H INSTRUCTION IS..BEING EXECUTED A PROGR
AM COUNTER (PC) ISUSED. THIS MAKES SURE
THAT INSTRUCTIONS..ARE EXECUTED IN THE R
IGHT ORDER AND IT..COPES WITH JUMPS, BRA
NCHES AND..SUBROUTINES. IT IS A 16 BIT N
UMBER..CONTAINED INSIDE THE 6502.....THE
STACK... AFTER EACH INSTRUCTION THE PRO
GRAM..COUNTER IS UPDATED TO POINT TO THE
..NEXT INSTRUCTION TO BE EXECUTED.NORMAL
LY THIS MEANS THAT THE PROGRAM..COUNTER
IS INCREASED BY THE NUMBER OF..BYTES IN
AN INSTRUCTION. WITH JUMPS IT..IS LOADED
WITH A COMPLETE NEW VALUE...WITH BRANCH
ES (RELATIVE JUMPS) THERE..IS AN OFFSET
BYTE WHICH IS ADDED TO THE..PROGRAM COUN
TER. IT CAN ALSO BE A..NEGATIVE NUMBER I
F BIT 7 IS SET (USING..TWO'S COMPLEMENT)
. THEREFORE A BRANCH..CAN ONLY CHANGE TH
E PROGRAM COUNTER BY..127 FORWARDS OR 12
8 BACKWARDS. THIS IS ALIMITATION WHEN WR
ITING A LONG PROGRAM..BUT SHOULD NOT AFF
ECT YOU WHEN WRITING..PROGRAMS WITH THIS
SIMULATOR.....THE STACK... ONE OF THE W
AYS THE 6502 USES THE STACKIS TO ENSURE
THAT JSR INSTRUCTIONS WORK..PROPERLY, AN
D THAT WHEN AN RTS..INSTRUCTION IS EXECU
TED, CONTROL IS..PASSED TO THE INSTRUCTI
ON IMMEDIATELY..FOLLOWING THE JSR INSTRU
CTION. THIS IS..DONE BY PUSHING THE CONT
ENTS OF THE..PROGRAM COUNTER ONTO THE ST
ACK. THIS..IS ALWAYS THE ADDRESS OF THE
MEMORY..LOCATION WHERE THE OP-CODE FOR T
HE JSR..INSTRUCTION IS, PLUS TWO. THEN,
WHEN..THE RTS INSTRUCTION IS EXECUTED, T
HIS..16 BIT NUMBER IS THEN PULLED OFF FR
OM..THE STACK AND ONE IS ADDED TO IT, AN
D..THIS VALUE IS PUT INTO THE PROGRAM..C
OUNTER. THIS HAS THE EFFECT OF THE NEXTI
NSTRUCTION EXECUTED BEING THE ONE..IMMED
IATELY AFTER THE ORIGINATING JSR..INSTRU
CTION.....THE STACK... HERE IS A LIST OF
INSTRUCTIONS THAT..ARE ASSOCIATED WITH
THE STACK....PHA.- PUSH ACCUMULATOR ONTO
STACK....PLA.- PULL ACCUMULATOR FROM ST
ACK....TSX.- TRANSFER VALUE OF STACK POI
NTER.. TO X REGISTER....TXS.- TRAN
SFER VALUE OF X REGISTER.. TO STAC
K POINTER....A DEMONSTRATION PROGRAM IS
GIVEN TO SHOWTHE EFFECT OF THESE AND THE
JSR AND..RTS INSTRUCTIONS ON THE STACK.
. TSX. JSR NORET.RET LDA
#$7B. PHA. LDA #$12. P
HA. TSX. RTS.NORET PLA.
TSX. PLA. TSX. JMP
RET.END TSX. BRK....MORE ADDRES
SING MODES...SO FAR THE FOLLOWING ADDRES
SING MODES..HAVE BEEN USED:....IMPLIED..
THESE INSTRUCTIONS ARE JUST THREE..LETTE
RS ON THEIR OWN, PERFORMING A..SIMPLE TA
SK, LIKE TXS FOR EXAMPLE. THEY ONLY REQU
IRE ONE BYTE PER INSTRUCTION.....ABSOLUT
E..THESE ARE SIMPLE INSTRUCTIONS THAT..A
FFECT MEMORY LOCATIONS WHOSE ADDRESS..IS
GREATER THAN 255 (PAGE 1 OR ABOVE)...TH
REE BYTES ARE USED PER INSTRUCTION.....M
ORE ADDRESSING MODES.....ZERO PAGE..THIS
MODE IS EXACTLY THE SAME AS THE..ABSOLU
TE MODE, EXCEPT THAT ONLY TWO..BYTES ARE
USED PER INSTRUCTION. THIS..IS BECAUSE
THE MSB IS ASSUMED TO BE 0..AS ALL MEMOR
Y LOCATIONS USING THIS FORM..OF ADDRESSI
NG ARE ON PAGE 0.....IMMEDIATE..THIS MOD
E ALSO REQUIRES TWO BYTES FOR..EACH INST
RUCTION. IMMEDIATE IS WHERE..AN ACTUAL N
UMBER IS GIVEN INSTEAD OF A..MEMORY LOCA
TION ADDRESS. THE '#' SYMBOL..IS USED TO
SPECIFY THIS MODE OF..ADDRESSING WITH A
SSEMBLERS (INCLUDING..THIS ONE).....MORE
ADDRESSING MODES....ABSOLUTE,Y..THIS IS
THE SAME AS ABSOLUTE ADDRESSING EXCEPT
THAT THE CONTENTS OF THE Y..REGISTER ARE
ADDED TO THE SPECIFIED..ADDRESS TO GIVE
A RESULTING ADDRESS OF..A MEMORY LOCATI
ON.....ABSOLUTE,X..THIS IS THE SAME AS A
BSOLUTE,Y..ADDRESSING EXCEPT THE X REGIS
TER IS..ADDED INSTEAD OF THE Y REGISTER.
....MORE ADDRESSING MODES....ZERO PAGE,Y
..THIS IS THE SAME AS ABSOLUTE,Y..EXCEPT
THAT A ZERO PAGE ADDRESS IS..GIVEN AND
THE INSTRUCTION ONLY TAKES..TWO BYTES AS
OPPOSED TO THREE NEEDED..BY ABSOLUTE,Y
ADDRESSING.....ZERO PAGE,X..THIS IS THE
SAME AS ZERO PAGE,Y FORM..OF ADDRESSING
EXCEPT THE X REGISTER IS..USED INSTEAD O
F THE Y REGISTER. THIS..MODE ALSO ONLY R
EQUIRES TWO BYTES......POST INDEXED ADDR
ESSING... THIS MODE OF ADDRESSING IS VER
Y USEFUL INDEED. AN EXAMPLE OF USING THI
S MODE..OF ADDRESSING IS STA (78),Y. WHE
N..THIS INSTRUCTION IS EXECUTED, THE 650
2..WILL LOOK UP LOCATIONS 78 AND 79 IN Z
EROPAGE. LOCATION 78 WILL FORM THE LSB O
F..THE ADDRESS AND LOCATION 79 WILL FORM
..THE MSB OF THE ADDRESS. THEREFORE IF..
LOCATION 78 WERE TO HOLD HEX 13 AND..LOC
ATION 79 WERE TO HOLD HEX 2F WHEN..THE P
ROGRAM WAS RUNNING THEN THE..RESULTING A
DDRESS OF THE MEMORY LOCATIONWOULD BE HE
X 2F13. AFTER THIS ADDRESS..HAS BEEN CAL
CULATED THE Y REGISTER IS..ADDED TO IT T
O FORM THE FINAL ADDRESS...SO IF THE Y R
EGISTER HELD 5 WHEN THE..6502 TRIED TO E
XECUTE THE ABOVE..INSTRUCTION, THE 6502
WOULD STORE THE..ACCUMULATOR AT MEMORY L
OCATION HEX 2F18......PRE-INDEXED INDIRE
CT ADDRESSING..THIS IS A VERY RARELY USE
D FORM OF..ADDRESSING. IT WILL BE DESCRI
BED HERE..FOR COMPLETENESS. THE INSTRUCT
ION..LDA (45,X) WILL BE USED AS AN EXAMP
LE..TO EXPLAIN THIS FORM OF ADDRESSING..
.WHATEVER IS CONTAINED IN THE X REGISTER
..AT THE TIME OF EXECUTION IS ADDED TO T
HEZERO PAGE ADDRESS IN THE INSTRUCTION,
INTHIS CASE 45. SO IF X CONTAINED 20..WH
EN THE PROGRAM IS RUNNING, THE FINAL..ZE
RO PAGE ADDRESS IS 65. THIS LOCATION..TH
EN FORMS THE LSB OF THE FINAL ADDRESS..A
ND LOCATION 66 FORMS THE MSB OF THE..FIN
AL ADDRESS. THEREFORE IF X CONTAINED..5
WHEN THE PROGRAM WAS RUNNING AND..LOCATI
ON 65 CONTAINED HEX E2 AND..LOCATION 66
CONTAINED HEX A1 THEN THE..ACCUMULATOR W
ILL BE LOADED WITH THE..CONTENTS OF MEMO
RY LOCATION A1E2 IN THE..ABOVE EXAMPLE..
...MORE ADDRESSING MODES...INDIRECT... T
HIS FORM OF ADDRESSING IS NOT..SUPPORTED
BY THE SIMULATOR. HOWEVER, IT..WOULD BE
SUPPORTED BY A NORMAL..ASSEMBLER. THERE
IS ONLY ONE INSTRUCTIONTHAT USES INDIRE
CT ADDRESSING AND THAT..IS JMP (XXXX). T
HIS WILL TAKE..THE CONTENTS OF MEMORY LO
CATION XXXX..AND THAT WILL FORM THE LSB
OF THE JMP..ADDRESS. THEN THE CONTENTS O
F MEMORY..LOCATION XXXX+1 FORMS THE MSB
OF THE..JMP ADDRESS. THE PROGRAM COUNTER
IS THENLOADED WITH THE JMP ADDRESS CAUS
ING..THE NEXT INSTRUCTION TO BE EXECUTED
, THEINSTRUCTION HELD IN THE MEMORY LOCA
TION..POINTED TO BY XXXX.....MORE ADDRES
SING MODES...CONSIDER THE FOLLOWING PROG
RAM:...LDA #9..STA 320..LDA #2..STA 321.
.JMP (320)...ALTHOUGH THIS PROGRAM WILL
NOT WORK ON..THIS SIMULATOR, IT WOULD BE
ASSEMBLED..AND RUN ON A NORMAL ASSEMBLE
R AND 6502...THIS PROGRAM WOULD HAVE THE
EFFECT OF..LOADING THE PROGRAM COUNTER
WITH HEX..209. THE NEXT INSTRUCTION TO B
E..EXECUTED WOULD BE AT MEMORY LOCATION.
.209.. LDA #2. STA 32.
LDA #2. STA 33.AGAIN LDY #1.LOOP
TYA.LOOP2 STA (32),Y. INY.
CPY #10. BNE LOOP. INC 33
. LDA 33. CMP #3. BEQ
AGAIN. BRK. LDA #$F1.
STA 140. LDA #3. STA 141.
STA 149. STA 150. LDX #1
0. TXA. STA (130,X). L
DA #40. LDX #19. STA (130,X)
. LDX #10. EOR (130,X).
BRK....MORE ON THE STACK... THE FLAGS
ARE HELD IN ONE BYTE IN THE..6502 AND AR
E ARRANGED THUS:...BIT7 BIT6 BIT5 BIT4 B
IT3 BIT2 BIT1 BIT0 . N V - B
D I Z C...N - NEGATIVE FLAG..V
- OVERFLOW FLAG..- - NOT USED (EXPANSIO
N BIT)..B - BREAK FLAG (NOT USED BY SIMU
LATOR)..D - DECIMAL MODE FLAG..I - INTER
RUPT DISABLE FLAG..Z - ZERO FLAG..C - CA
RRY FLAG....MORE ON THE STACK...THEREFOR
E, IF YOU THINK OF ALL THE FLAGSAS A SIN
GLE 8 BIT BINARY NUMBER, THAT..IS ONE BY
TE, EACH BIT REPRESENTS ONE..NUMBER FROM
THE BINARY COLUMN HEADINGS. FOR EXAMPLE
, THE OVERFLOW FLAG GIVES..THE NUMBER 64
.....MORE ON THE STACK... THE FLAGS ARE
STORED IN THIS WAY AND..ARE KEPT TRACK O
F BY THE 6502 PROCESSOR..AND STORED IN W
HAT IS KNOWN AS THE..PROCESSOR STATUS RE
GISTER (PSR). AS YOU..KNOW, MOST INSTRUC
TIONS AFFECT FLAGS,..BUT ONLY TWO INSTRU
CTIONS AFFECT THE..PROCESSOR STATUS REGI
STER AS A WHOLE...THESE INSTRUCTIONS ARE
PHP AND PLP,..WHICH WILL PUSH AND PULL
THE PROCESSOR..STATUS REGISTER TO AND FR
OM THE STACK...IF YOU WANTED TO SET, SAY
THREE FLAGS..AT ONCE, YOU COULD USE PHP
AND PLP TO..DO SO. HOWEVER, THERE ARE N
O TRANSFER..INSTRUCTIONS TO TRANSFER BET
WEEN THE..ACCUMULATOR AND PSR, SO OTHER.
.INSTRUCTIONS HAVE TO BE USED IN..CONJUN
CTION WITH THESE INSTRUCTIONS FOR..THEM
TO BE EFFECTIVE.....MORE ON THE STACK...
AN EXAMPLE PROGRAM DEMONSTRATING HOW..T
HE PROCESSOR STATUS REGISTER IS USED..IN
CONJUNCTION WITH THE STACK IS GIVEN..TO
HELP DEMONSTRATE ITS USES... ONE OF THE
OTHER USES FOR THESE..INSTRUCTIONS IS T
HE TEMPORARY SAVING OF..THE FLAGS. YOU C
AN PUSH THE VALUE OF THEPSR ONTO THE STA
CK BY USING PHP,..EXECUTE INSTRUCTIONS T
HAT NORMALLY..AFFECT THE FLAGS, THEN BY
USING PLP YOU..CAN RESTORE THE FLAGS TO
THEIR ORIGINAL..VALUES. REMEMBER TO PULL
AND PUSH THE..RIGHT NUMBER OF VALUES, O
THERWISE THE..STACK WILL BECOME FILLED U
P AND 'DIRTY'.. SEC. TSX.
PHP. PLA. ORA #192.
PHA. PLP. LDA #$FF.
PHA. PLP. LDA #1.LOOP PHA.
PLP. ASL A. BCC LOOP.
BRK....THE BIT INSTRUCTION... THI
S INSTRUCTION IS USED TO CHECK THAT..ONE
OR MORE BITS OF A MEMORY LOCATION..ARE
SET. THE MEMORY LOCATION IS EITHER..IN T
HE ADDRESSING MODES ABSOLUTE OR ZEROPAGE
. THE BITS TO BE TESTED ARE IN THE..ACCU
MULATOR, AND THE MEMORY LOCATION..TO BE
TESTED AGAINST THE ACCUMULATOR..IS SUPPL
IED WITH THE BIT INSTRUCTION IN..THE FOR
M BIT XXXX WHERE XXXX IS A SINGLEMEMORY
LOCATION. AFTER THE INSTRUCTION..THE ZER
O FLAG WILL BE SET IF NONE OF THEBITS SP
ECIFIED BY THE ACCUMULATOR ARE..SET. THE
ACCUMULATOR IS LEFT UNCHANGED..AFTER TH
E INSTRUCTION. THE CONTENTS OF..BIT 6 OF
THE MEMORY LOCATION ARE PLACED..IN THE
OVERFLOW FLAG, AND BIT 7 IS..PLACED IN T
HE NEGATIVE FLAG. AN EXAMPLE..PROGRAM IS
GIVEN TO SHOW BIT IN USE.. LDA #$
30. STA 6. LDA #0. SEC
.ROTATE ROL A. BIT 6. BEQ RO
TATE. LDA #$C0. STA $3F0.
LDA #0. BIT $3F0. LDA #$
80. STA 560. LDA #0. B
IT 560. BRK....INTERRUPTS... AN IN
TERRUPT IS SOMETHING THAT OCCURS..AFTER
A FIXED AMOUNT OF TIME OR AFTER..A CERTA
IN EVENT, LIKE PRESSING RUN-STOP..FOR EX
AMPLE. WHEN AN INTERRUPT OCCURS..THE 650
2 LOOKS UP WHAT IS KNOWN AS AN..INTERRUP
T VECTOR WHICH IS AN INDIRECT..JUMP TO A
SMALL PROGRAM THAT HANDLES THEINTERRUPT
. THIS INTERRUPT MIGHT BE TO..READ THE K
EYBOARD FOR EXAMPLE. WHEN THE..INTERRUPT
HAS FINISHED WHAT IT IS DOING..THE PROG
RAM WILL RESUME AS NORMAL TO..WHERE IT L
EFT OFF BEFORE THE..INTERRUPT OCCURRED..
...INTERRUPTS... WITH THE SIMULATOR, YOU
CAN NOT WRITE..YOUR OWN INTERRUPT ROUTI
NES. HOWEVER,..INTERRUPTS ARE OCCURRING
ALL THE TIME,..TO CHECK IF YOU PRESSING
A KEY... THERE ARE TWO TYPES OF INTERRUP
TS..THESE ARE:....MASKABLE INTERRUPTS..
THESE ARE INTERRUPTS THAT CAN BE..CHANGE
D TO POINT TO YOUR OWN ROUTINE...BY USIN
G THE INSTRUCTION SEI (SET..INTERRUPT DI
SABLE FLAG) YOU CAN MASK..OUT MASKABLE I
NTERRUPTS ALTOGETHER, SO..THAT MASKABLE
INTERRUPTS DO NOT OCCUR..UNTIL A CLI (CL
EAR INTERRUPT DISABLE..FLAG) INSTRUCTION
IS EXECUTED......NON - MASKABLE INTERRU
PTS... THIS TYPE OF INTERRUPT IS NOT AFF
ECTED..BY THE SEI AND CLI INSTRUCTIONS..
.DEPENDING ON THE COMPUTER, THESE..INTER
RUPTS CAN STILL HAVE THEIR VECTORS..CHAN
GED.... ALL INTERRUPTS END IN AN RTI (RE
TURN..FROM INTERRUPT) INSTRUCTION. USUAL
LY..AN INTERRUPT ROUTINE HAS TO SAVE THE
..REGISTERS IT USES, BY PUSHING THEM ONT
O..THE STACK. WHEN AN INTERRUPT OCCURS T
HE..PROCESSOR STATUS REGISTER AND THE RE
TURNADDRESS ARE PUSHED ONTO THE STACK. W
HEN..AN RTI INSTRUCTION IS EXECUTED THE
FLAGSAND RETURN ADDRESS ARE PULLED FROM
THE..STACK AND THE PROGRAM WILL CONTINUE
AS..NORMAL.....WHAT NOW ?... YOU HAVE N
OW FINISHED THE COURSE OF..LESSONS TO TE
ACH YOU 6502 MACHINE CODE...THE LESSONS
HAVE BEEN DESIGNED TO TEACH MACHINE CODE
SO THAT IT WILL BE THE SAMEFOR EACH 650
2 BASED MACHINE. HOWEVER,..TO MAKE THE M
OST OF THE MACHINE, IT IS..ADVISABLE TO
USE WHAT IS CALLED AN..OPERATING SYSTEM.
THIS IS CONTAINED IN..ROM AND GIVEN WIT
H THE COMPUTER FITTED..AS STANDARD. AN O
PERATING SYSTEM IS A..MACHINE CODE PROGR
AM THAT LETS YOU USE..ADVANCED FEATURES
OF A MACHINE LIKE..GRAPHICS AND SOUND. I
T ALSO HANDLES..ROUTINES FOR READING THE
KEYBOARD AND..USING CASSETTES AND DISC
DRIVES, AS WELLAS MANY OTHER FUNCTIONS..
...WHAT NOW ?... AS THIS PROGRAM ONLY SI
MULATES THE..RUNNING OF A 6502 PROGRAM,
YOU CANNOT..USE THIS PROGRAM IN CONJUNCT
ION WITH..THE OPERATING SYSTEM. THEREFOR
E, IT IS..TIME TO USE A MORE POWERFUL BU
T LESS..USER FRIENDLY ASSEMBLER...NOTE T
HAT MACHINE CODE PROGRAMS RUN VERYQUICKL
Y AND WILL NOT WAIT FOR YOU TO..PRESS TH
E RETURN KEY LIKE THIS ONE DOES!WITH A M
ACHINE CODE PROGRAM NOT WRITTEN..WITH TH
IS ASSEMBLER THERE IS A CHANCE..THAT THE
PROGRAM COULD 'CRASH'...THEREFORE IT IS
UP TO YOU TO MAKE..SURE YOU USE 'SAFE'
AREAS OF..MEMORY. IF YOU ARE EVER UNSURE
OF A..INSTRUCTION YOU CAN ALWAYS USE TH
IS..PROGRAM TO CHECK HOW IT WORKS BEFORE
..USING IT IN YOUR OWN PROGRAM..........
........................................
........................................
.........)............H......` .....I?P
...........I.......?...?P..[...Z......8.
A..E....E.......A..I._..................
....................................I...
[
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL