00000000: 01 08 07 08 E8 03 21 00 13 08 F2 03 AC B2 34 39 |......!.......49|
00000010: 31 35 32 00 19 08 FC 03 21 00 3D 08 06 04 4A 53 |152.....!.=...JS|
00000020: 52 20 49 4E 49 54 20 20 20 21 20 53 45 54 20 55 |R INIT ! SET U|
00000030: 50 20 44 45 4C 41 59 20 54 41 42 4C 45 00 58 08 |P DELAY TABLE.X.|
00000040: 10 04 4A 53 52 20 53 45 54 49 52 51 20 21 20 53 |..JSR SETIRQ ! S|
00000050: 45 54 20 49 52 51 27 53 00 76 08 1A 04 52 54 53 |ET IRQ'S.v...RTS|
00000060: 20 20 20 20 20 20 20 20 21 20 41 4E 44 20 52 45 | ! AND RE|
00000070: 54 55 52 4E 20 21 00 7C 08 24 04 21 00 89 08 2E |TURN !.|.$.!....|
00000080: 04 53 45 54 49 52 51 20 21 00 91 08 38 04 53 45 |.SETIRQ !...8.SE|
00000090: 49 00 9E 08 42 04 4C 44 41 20 23 24 37 46 00 AC |I...B.LDA #$7F..|
000000A0: 08 4C 04 53 54 41 20 24 44 43 30 44 00 BA 08 56 |.L.STA $DC0D...V|
000000B0: 04 4C 44 41 20 24 44 43 30 44 00 C7 08 60 04 4C |.LDA $DC0D...`.L|
000000C0: 44 41 20 23 24 31 42 00 D5 08 6A 04 53 54 41 20 |DA #$1B...j.STA |
000000D0: 24 44 30 31 31 00 F9 08 74 04 4C 44 41 20 23 24 |$D011...t.LDA #$|
000000E0: 33 32 20 20 20 21 20 3C 2D 20 53 45 54 20 54 48 |32 ! <- SET TH|
000000F0: 49 53 20 4E 55 4D 42 45 52 00 1F 09 7E 04 53 54 |IS NUMBER...~.ST|
00000100: 41 20 24 44 30 31 32 20 20 21 20 20 20 20 54 4F |A $D012 ! TO|
00000110: 20 54 48 45 20 46 49 52 53 54 20 4C 49 4E 45 00 | THE FIRST LINE.|
00000120: 41 09 88 04 4C 44 41 20 23 B3 49 52 51 20 20 21 |A...LDA #.IRQ !|
00000130: 20 20 20 20 59 4F 55 20 57 41 4E 54 20 59 4F 55 | YOU WANT YOU|
00000140: 52 00 67 09 92 04 53 54 41 20 24 33 31 34 20 20 |R.g...STA $314 |
00000150: 20 21 20 20 20 20 43 4F 4C 4F 55 52 53 20 54 4F | ! COLOURS TO|
00000160: 20 53 54 41 52 54 2E 00 75 09 9C 04 4C 44 41 20 | START..u...LDA |
00000170: 23 B1 49 52 51 00 82 09 A6 04 53 54 41 20 24 33 |#.IRQ.....STA $3|
00000180: 31 35 00 8D 09 B0 04 4C 44 41 20 23 31 00 9B 09 |15.....LDA #1...|
00000190: BA 04 53 54 41 20 24 44 30 31 39 00 A9 09 C4 04 |..STA $D019.....|
000001A0: 53 54 41 20 24 44 30 31 41 00 B1 09 CE 04 43 4C |STA $D01A.....CL|
000001B0: 49 00 B9 09 D8 04 52 54 53 00 BF 09 E2 04 21 00 |I.....RTS.....!.|
000001C0: E6 09 EC 04 4D 41 58 B2 24 38 38 20 20 20 20 20 |....MAX.$88 |
000001D0: 20 20 21 20 4D 41 58 2E 43 4F 4C 4F 55 52 45 44 | ! MAX.COLOURED|
000001E0: 20 4C 49 4E 45 53 00 0D 0A F6 04 44 45 4C 54 41 | LINES.....DELTA|
000001F0: 42 B2 24 43 33 30 30 20 21 3C 44 45 4C 41 59 20 |B.$C300 !<DELAY |
00000200: 54 41 42 4C 45 20 41 44 44 52 45 53 53 00 35 0A |TABLE ADDRESS.5.|
00000210: 00 05 43 4F 4C 54 41 42 B2 24 43 36 30 30 20 21 |..COLTAB.$C600 !|
00000220: 3C 43 4F 4C 4F 55 52 20 54 41 42 4C 45 20 41 44 |<COLOUR TABLE AD|
00000230: 44 52 45 53 53 00 3B 0A 0A 05 21 00 45 0A 14 05 |DRESS.;...!.E...|
00000240: 49 52 51 20 21 00 68 0A 1E 05 4C 44 58 20 23 24 |IRQ !.h...LDX #$|
00000250: 44 20 20 20 21 3C 47 45 54 20 49 4E 20 45 58 41 |D !<GET IN EXA|
00000260: 43 54 4C 59 20 54 48 45 00 8E 0A 28 05 49 31 20 |CTLY THE...(.I1 |
00000270: 44 45 58 20 20 20 20 21 20 52 49 47 48 54 20 50 |DEX ! RIGHT P|
00000280: 4C 41 43 45 20 54 4F 20 53 54 41 52 54 21 00 99 |LACE TO START!..|
00000290: 0A 32 05 42 4E 45 20 49 31 00 9F 0A 3C 05 21 00 |.2.BNE I1...<.!.|
000002A0: BF 0A 46 05 49 32 20 4C 44 59 20 44 45 4C 54 41 |..F.I2 LDY DELTA|
000002B0: 42 2C 58 20 21 3C 47 45 54 20 44 45 4C 41 59 00 |B,X !<GET DELAY.|
000002C0: E0 0A 50 05 4C 44 41 20 43 4F 4C 54 41 42 2C 58 |..P.LDA COLTAB,X|
000002D0: 20 20 20 20 21 3C 47 45 54 20 43 4F 4C 4F 55 52 | !<GET COLOUR|
000002E0: 00 06 0B 5A 05 49 33 20 44 45 59 20 20 20 20 20 |...Z.I3 DEY |
000002F0: 20 20 20 20 20 21 3C 54 4F 20 54 48 45 20 44 45 | !<TO THE DE|
00000300: 4C 41 59 20 54 4F 00 2B 0B 64 05 42 4E 45 20 49 |LAY TO.+.d.BNE I|
00000310: 33 20 20 20 20 20 20 20 20 20 20 21 20 57 41 49 |3 ! WAI|
00000320: 54 20 46 4F 52 20 4C 49 4E 45 2E 00 52 0B 6E 05 |T FOR LINE..R.n.|
00000330: 53 54 41 20 24 44 30 32 30 20 20 20 20 20 20 20 |STA $D020 |
00000340: 21 3C 41 4E 44 20 53 54 4F 52 45 20 43 4F 4C 4F |!<AND STORE COLO|
00000350: 55 52 00 79 0B 78 05 53 54 41 20 24 44 30 32 31 |UR.y.x.STA $D021|
00000360: 20 20 20 20 20 20 20 21 20 49 4E 20 53 43 52 45 | ! IN SCRE|
00000370: 45 4E 2B 42 4F 52 44 45 52 00 81 0B 82 05 49 4E |EN+BORDER.....IN|
00000380: 58 00 A1 0B 8C 05 43 50 58 20 23 4D 41 58 20 20 |X.....CPX #MAX |
00000390: 20 20 20 20 20 20 21 3C 46 49 4E 49 53 48 45 44 | !<FINISHED|
000003A0: 3F 00 C7 0B 96 05 42 4E 45 20 49 32 20 20 20 20 |?.....BNE I2 |
000003B0: 20 20 20 20 20 20 21 20 49 46 20 4E 4F 54 2C 43 | ! IF NOT,C|
000003C0: 4F 4E 54 49 4E 55 45 00 CD 0B A0 05 21 00 ED 0B |ONTINUE.....!...|
000003D0: AA 05 4C 44 41 20 23 31 20 20 20 20 20 20 20 20 |..LDA #1 |
000003E0: 20 20 21 3C 52 45 53 45 54 20 49 52 51 00 FB 0B | !<RESET IRQ...|
000003F0: B4 05 53 54 41 20 24 44 30 31 39 00 1F 0C BE 05 |..STA $D019.....|
00000400: 4A 4D 50 20 24 45 41 33 31 20 20 20 20 20 20 20 |JMP $EA31 |
00000410: 21 3C 41 4E 44 20 52 45 54 55 52 4E 2E 2E 2E 00 |!<AND RETURN....|
00000420: 25 0C C8 05 21 00 44 0C D2 05 49 4E 49 54 20 21 |%...!.D...INIT !|
00000430: 20 53 45 54 20 55 50 20 44 45 4C 41 59 20 54 41 | SET UP DELAY TA|
00000440: 42 4C 45 2E 00 4F 0C DC 05 4C 44 58 20 23 30 00 |BLE..O...LDX #0.|
00000450: 5E 0C E6 05 49 4E 30 20 4C 44 59 20 23 30 00 71 |^...IN0 LDY #0.q|
00000460: 0C F0 05 49 4E 31 20 4C 44 41 20 44 54 41 42 2C |...IN1 LDA DTAB,|
00000470: 59 00 82 0C FA 05 53 54 41 20 44 45 4C 54 41 42 |Y.....STA DELTAB|
00000480: 2C 58 00 8A 0C 04 06 49 4E 58 00 92 0C 0E 06 49 |,X.....INX.....I|
00000490: 4E 59 00 9D 0C 18 06 43 50 59 20 23 38 00 A9 0C |NY.....CPY #8...|
000004A0: 22 06 42 43 43 20 49 4E 31 00 B6 0C 2C 06 43 50 |".BCC IN1...,.CP|
000004B0: 58 20 23 4D 41 58 00 C2 0C 36 06 42 43 43 20 49 |X #MAX...6.BCC I|
000004C0: 4E 30 00 CA 0C 40 06 52 54 53 00 D0 0C 4A 06 21 |N0...@.RTS...J.!|
000004D0: 00 ED 0C 54 06 44 54 41 42 20 42 59 54 20 38 2C |...T.DTAB BYT 8,|
000004E0: 38 2C 38 2C 38 2C 38 2C 38 2C 38 2C 31 00 10 0D |8,8,8,8,8,8,1...|
000004F0: 5E 06 21 20 54 48 45 20 44 52 45 41 44 45 44 20 |^.! THE DREADED |
00000500: 38 54 48 20 4C 49 4E 45 20 5E 20 41 52 47 48 21 |8TH LINE ^ ARGH!|
00000510: 00 16 0D 68 06 21 00 38 0D 72 06 21 20 20 20 20 |...h.!.8.r.! |
00000520: 53 49 4E 47 4C 45 20 50 49 58 45 4C 20 43 4F 4C |SINGLE PIXEL COL|
00000530: 4F 55 52 2D 42 41 52 53 00 5A 0D 7C 06 21 20 20 |OUR-BARS.Z.|.! |
00000540: 20 20 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D | --------------|
00000550: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 00 60 0D 86 06 21 |----------.`...!|
00000560: 00 87 0D 90 06 21 20 2D 54 4F 20 55 53 45 20 54 |.....! -TO USE T|
00000570: 48 49 53 20 50 52 4F 47 52 41 4D 2C 59 4F 55 20 |HIS PROGRAM,YOU |
00000580: 48 41 56 45 20 54 4F 00 AD 0D 9A 06 21 20 46 49 |HAVE TO.....! FI|
00000590: 52 53 54 20 41 53 53 45 4D 42 4C 45 20 49 54 2C |RST ASSEMBLE IT,|
000005A0: 53 54 41 52 54 20 49 54 20 57 49 54 48 00 D2 0D |START IT WITH...|
000005B0: A4 06 21 20 53 59 53 20 34 39 31 35 32 2C 41 4E |..! SYS 49152,AN|
000005C0: 44 20 54 48 45 4E 20 45 49 54 48 45 52 20 50 4F |D THEN EITHER PO|
000005D0: 4B 45 00 F7 0D AE 06 21 20 46 52 4F 4D 20 42 41 |KE.....! FROM BA|
000005E0: 53 49 43 2C 4F 52 20 55 53 45 20 41 20 4D 4F 4E |SIC,OR USE A MON|
000005F0: 49 54 4F 52 20 54 4F 00 1C 0E B8 06 21 20 50 55 |ITOR TO.....! PU|
00000600: 54 20 54 48 45 20 43 4F 4C 4F 55 52 20 56 41 4C |T THE COLOUR VAL|
00000610: 55 45 53 20 49 4E 54 4F 20 54 48 45 00 3E 0E C2 |UES INTO THE.>..|
00000620: 06 21 20 54 41 42 4C 45 20 46 52 4F 4D 20 24 43 |.! TABLE FROM $C|
00000630: 36 30 30 2D 24 43 36 30 30 2B 4D 41 58 2E 00 64 |600-$C600+MAX..d|
00000640: 0E CC 06 21 20 45 47 2E 20 30 20 46 4F 52 20 42 |...! EG. 0 FOR B|
00000650: 4C 41 43 4B 2C 31 20 46 4F 52 20 57 48 49 54 45 |LACK,1 FOR WHITE|
00000660: 20 45 54 43 00 86 0E D6 06 21 20 2D 57 41 54 43 | ETC.....! -WATC|
00000670: 48 20 54 48 45 20 54 57 4F 20 54 41 42 4C 45 53 |H THE TWO TABLES|
00000680: 20 44 4F 4E 27 54 00 A3 0E E0 06 21 20 4F 56 45 | DON'T.....! OVE|
00000690: 52 57 52 49 54 45 20 45 41 43 48 20 4F 54 48 45 |RWRITE EACH OTHE|
000006A0: 52 21 21 00 A9 0E EA 06 21 00 C7 0E F4 06 21 20 |R!!.....!.....! |
000006B0: 2D 54 48 41 4E 4B 53 20 54 4F 20 44 41 56 45 20 |-THANKS TO DAVE |
000006C0: 57 45 41 56 45 52 21 00 CD 0E FE 06 21 00 EE 0E |WEAVER!.....!...|
000006D0: 08 07 AC B2 24 43 36 30 30 20 21 20 45 58 41 4D |....$C600 ! EXAM|
000006E0: 50 4C 45 20 43 4F 4C 4F 55 52 53 2E 2E 2E 00 F4 |PLE COLOURS.....|
000006F0: 0E 12 07 21 00 19 0F 1C 07 42 59 54 20 36 2C 30 |...!.....BYT 6,0|
00000700: 2C 36 2C 32 2C 30 2C 36 2C 32 2C 34 2C 30 2C 36 |,6,2,0,6,2,4,0,6|
00000710: 2C 32 2C 34 2C 24 41 2C 30 00 3B 0F 26 07 42 59 |,2,4,$A,0.;.&.BY|
00000720: 54 20 36 2C 32 2C 34 2C 24 41 2C 37 2C 30 2C 36 |T 6,2,4,$A,7,0,6|
00000730: 2C 32 2C 34 2C 24 41 2C 37 2C 31 00 5D 0F 30 07 |,2,4,$A,7,1.].0.|
00000740: 42 59 54 20 37 2C 24 41 2C 34 2C 32 2C 36 2C 30 |BYT 7,$A,4,2,6,0|
00000750: 2C 37 2C 24 41 2C 34 2C 32 2C 36 2C 30 00 82 0F |,7,$A,4,2,6,0...|
00000760: 3A 07 42 59 54 20 24 41 2C 34 2C 32 2C 36 2C 30 |:.BYT $A,4,2,6,0|
00000770: 2C 34 2C 32 2C 36 2C 30 2C 32 2C 36 2C 30 2C 36 |,4,2,6,0,2,6,0,6|
00000780: 2C 30 00 88 0F 44 07 21 00 AE 0F 4E 07 42 59 54 |,0...D.!...N.BYT|
00000790: 20 30 2C 36 2C 31 34 2C 31 34 2C 31 34 2C 33 2C | 0,6,14,14,14,3,|
000007A0: 30 2C 31 34 2C 33 2C 33 2C 33 2C 31 2C 30 00 CF |0,14,3,3,3,1,0..|
000007B0: 0F 58 07 42 59 54 20 33 2C 31 2C 31 2C 31 2C 33 |.X.BYT 3,1,1,1,3|
000007C0: 2C 30 2C 31 2C 33 2C 33 2C 33 2C 31 34 2C 30 00 |,0,1,3,3,3,14,0.|
000007D0: E8 0F 62 07 42 59 54 20 33 2C 31 34 2C 31 34 2C |..b.BYT 3,14,14,|
000007E0: 31 34 2C 36 2C 30 2C 30 00 EE 0F 6C 07 21 00 13 |14,6,0,0...l.!..|
000007F0: 10 76 07 42 59 54 20 39 2C 30 2C 39 2C 32 2C 30 |.v.BYT 9,0,9,2,0|
00000800: 2C 39 2C 32 2C 38 2C 30 2C 39 2C 32 2C 38 2C 24 |,9,2,8,0,9,2,8,$|
00000810: 41 2C 30 00 35 10 80 07 42 59 54 20 39 2C 32 2C |A,0.5...BYT 9,2,|
00000820: 38 2C 24 41 2C 37 2C 30 2C 39 2C 32 2C 38 2C 24 |8,$A,7,0,9,2,8,$|
00000830: 41 2C 37 2C 31 00 57 10 8A 07 42 59 54 20 37 2C |A,7,1.W...BYT 7,|
00000840: 24 41 2C 38 2C 32 2C 39 2C 30 2C 37 2C 24 41 2C |$A,8,2,9,0,7,$A,|
00000850: 38 2C 32 2C 39 2C 30 00 7C 10 94 07 42 59 54 20 |8,2,9,0.|...BYT |
00000860: 24 41 2C 38 2C 32 2C 39 2C 30 2C 38 2C 32 2C 39 |$A,8,2,9,0,8,2,9|
00000870: 2C 30 2C 32 2C 39 2C 30 2C 39 2C 30 00 00 00 |,0,2,9,0,9,0... |
......!.......49152.....!.=...JSR INIT
! SET UP DELAY TABLE.X...JSR SETIRQ ! S
ET IRQ'S.V...RTS ! AND RETURN !.|
.$.!.....SETIRQ !...8.SEI...B.LDA #$7F..
.L.STA $DC0D...V.LDA $DC0D.G.`.LDA #$1B.
U.J.STA $D011...T.LDA #$32 ! <- SET TH
IS NUMBER...~.STA $D012 ! TO THE FIR
ST LINE.A...LDA #.IRQ ! YOU WANT YOU
R.G...STA $314 ! COLOURS TO START..
U...LDA #.IRQ.....STA $315.....LDA #1...
..STA $D019...D.STA $D01A...N.CLI...X.RT
S.....!.....MAX.$88 ! MAX.COLOURED
LINES.....DELTAB.$C300 !<DELAY TABLE AD
DRESS.5...COLTAB.$C600 !<COLOUR TABLE AD
DRESS.;...!.E...IRQ !.H...LDX #$D !<GE
T IN EXACTLY THE...(.I1 DEX ! RIGHT P
LACE TO START!...2.BNE I1...<.!...F.I2 L
DY DELTAB,X !<GET DELAY...P.LDA COLTAB,X
!<GET COLOUR...Z.I3 DEY !<T
O THE DELAY TO.+.D.BNE I3 ! WAI
T FOR LINE..R.N.STA $D020 !<AND ST
ORE COLOUR.Y.X.STA $D021 ! IN SCRE
EN+BORDER.....INX.....CPX #MAX !<
FINISHED?.G...BNE I2 ! IF NOT,C
ONTINUE.M. .!.....LDA #1 !<RESE
T IRQ.....STA $D019.....JMP $EA31
!<AND RETURN....%.H.!.D.R.INIT ! SET UP
DELAY TABLE..O...LDX #0.^...IN0 LDY #0.Q
...IN1 LDA DTAB,Y.....STA DELTAB,X.....I
NX.....INY.....CPY #8...".BCC IN1...,.CP
X #MAX.B.6.BCC IN0.J.@.RTS.P.J.!...T.DTA
B BYT 8,8,8,8,8,8,8,1...^.! THE DREADED
8TH LINE ^ ARGH!...H.!.8.R.! SINGLE P
IXEL COLOUR-BARS.Z.|.! --------------
----------.`...!.....! -TO USE THIS PROG
RAM,YOU HAVE TO.....! FIRST ASSEMBLE IT,
START IT WITH.R...! SYS 49152,AND THEN E
ITHER POKE.....! FROM BASIC,OR USE A MON
ITOR TO.....! PUT THE COLOUR VALUES INTO
THE.>.B.! TABLE FROM $C600-$C600+MAX..D
.L.! EG. 0 FOR BLACK,1 FOR WHITE ETC...V
.! -WATCH THE TWO TABLES DON'T.....! OVE
RWRITE EACH OTHER!!.....!.G...! -THANKS
TO DAVE WEAVER!.M...!.......$C600 ! EXAM
PLE COLOURS........!.....BYT 6,0,6,2,0,6
,2,4,0,6,2,4,$A,0.;.&.BYT 6,2,4,$A,7,0,6
,2,4,$A,7,1.].0.BYT 7,$A,4,2,6,0,7,$A,4,
2,6,0...:.BYT $A,4,2,6,0,4,2,6,0,2,6,0,6
,0...D.!...N.BYT 0,6,14,14,14,3,0,14,3,3
,3,1,0.O.X.BYT 3,1,1,1,3,0,1,3,3,3,14,0.
..B.BYT 3,14,14,14,6,0,0...L.!...V.BYT 9
,0,9,2,0,9,2,8,0,9,2,8,$A,0.5...BYT 9,2,
8,$A,7,0,9,2,8,$A,7,1.W...BYT 7,$A,8,2,9
,0,7,$A,8,2,9,0.|...BYT $A,8,2,9,0,8,2,9
,0,2,9,0,9,0...