Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_36.ADF » CD7SRC

CD7SRC

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_36.ADF
Filename: CD7SRC
Read OK:
File size: 0EB3 bytes
Load address: FFFF1D00
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10REM CODE6 assembler
   20MODE6
   30REM by Richard Dimond 
   40REM V.2 Feb 1998
   50REM 
   60PROCassem 
   70OSCLI"SAVE CODE6 900 "+STR$~P%
   80END
   90:
  100DEFPROCassem 
  110addr=&70:style=&72:prtflg=&78
  120bdflg=&7A:itflg=&7B:?bdflg=0:?itflg=0 
  130lines=&80:skiplines=&81:skip=&82:count=&83:modeflag=&84:temp=&85
  140?lines=60:?skiplines=12:?skip=0 
  150block=&CF7:himem=&06
  160boldcd=&1C:italcd=&1D
  170:
  180bold$=CHR$27+CHR$69+CHR$27+CHR$50 
  190ital$=CHR$27+CHR$52+CHR$27+CHR$50 
  200norm$=CHR$27+CHR$53+CHR$27+CHR$70 
  210:
  220FORi=0TO2STEP2 
  230P%=&900 
  240[OPTi 
  250JMPclear
  260JMPprint
  270JMP&9999    \reserved
  280JMP&9999    \reserved
  290:
  300.clear
  310LDAhimem:STAaddr
  320LDAhimem+1:STAaddr+1
  330.clrlp1 LDY#0
  340.clrlp2 LDA#0:STA(addr),Y
  350INY:BNE clrlp2
  360INCaddr+1
  370LDAaddr+1
  380CMP#&40:BNE clrlp1
  390RTS 
  400:
  410.print 
  420LDA#0:STAbdflg:STAitflg
  430LDA#&87:JSR&FFF4
  440CPY#3:BNEmm
  450LDA#0:STAmodeflag:JMPm
  460.mm LDA#255:STAmodeflag
  470.m LDA#&75:JSR&FFF4
  480TXA:AND#1
  490STAprtflg 
  500BEQnprt:LDA#bold DIV256:STAstyle+1:.nprt 
  510LDAhimem:STAaddr
  520LDAhimem+1:STAaddr+1
  530LDAmodeflag:BNEline
  540.prtlp1 LDY#0
  550.prtlp2 LDA(addr),Y
  560CMP#0:BEQrts 
  570CMP#&0D:BEQnewl
  580JMPprt
  590.ct BNE prtlp2
  600INCaddr+1:JMP prtlp1
  610.rts RTS 
  620.newl JSR&FFE7:LDAskip:BEQnotskp:JMPskp:.notskp:INY:JMPct
  630.skp DECcount:BNEinc:LDAskiplines:STAcount:.skp1 JSR&FFE7:DECcount:BNEskp1:LDAlines:STAcount:JMPinc 
  640.prt CMP#boldcd:BNEnotbold:LDAbdflg:EOR#&FF:STAbdflg:JMPinc:.notbold
  650CMP#italcd:BNEnotital:LDAitflg:EOR#&FF:STAitflg:JMPinc:.notital
  660CMP#&20:BCCinc
  670STAblock:LDAbdflg:BEQnotbd:JMPbd:.notbd LDAitflg:BEQnotit:JMPit:.notit LDAblock:JSR&FFEE
  680.inc LDAmodeflag:BNEr:INY:JMPct:.r INY:RTS
  690.line
  700LDY#0:LDA#39:STAcnt+1
  710.spl LDA(addr),Y:CMP#ASC" ":BNEnsp:INY:INCcnt+1:JMPspl
  720.nsp
  730.linelp LDA(addr),Y
  740CMP#0:BEQrts1
  750CMP#&0D:BEQtest
  760JSRprt
  770.cnt CPY#39:BEQnext
  780JMP linelp
  790.rts1 RTS
  800.test INY:LDA(addr),Y
  810JSRchkchr:BCSok2
  820CMP#&0D:BEQok4
  830CMP#&20:BEQok2
  840DEY:DEY:LDA(addr),Y
  850JSRchkchr:BCSok1
  860CMP#&0D:BEQok3
  870INY
  880CMP#&20:BCCnn
  890LDA&318:BEQnospc:LDA#&20:JSR&FFEE:.nospc
  900.nn INY:JMP cnt
  910.ok1 INY:INY
  920.ok2 JMPnewline
  930.ok3 INY:INY
  940.ok4 JSR&FFE7:JMPnewline
  950.next LDA(addr),Y
  960JSRchkchr:BEQskipchr
  970CMP#&20:BEQnewline
  980.delete DEY:LDA#&7F:JSR&FFEE
  990LDA(addr),Y
 1000CMP#&20:BNEdelete
 1010.newline JSR&FFE7
 1020.incaddr CLC
 1030TYA:ADCaddr:STAaddr
 1040LDAaddr+1:ADC#0:STAaddr+1
 1050JMPline
 1060.skipchr INY:LDA(addr),Y
 1070JSRchkchr:BEQskipchr
 1080JMPincaddr
 1090.chkchr
 1100LDA(addr),Y
 1110CMP#&2A:BEQchrok
 1120CMP#&7E:BEQchrok
 1130CMP#&3D:BEQchrok
 1140CLC:RTS
 1150.chrok SEC:RTS
 1160.bd TXA:PHA:TYA:PHA
 1170LDAprtflg 
 1180BEQnoprt1 
 1190LDA#bold MOD256 
 1200JSRprinter 
 1210.noprt1 
 1220JSRgetdef 
 1230LDX#1 
 1240.loop1 
 1250LDAblock,X 
 1260ASL A 
 1270ORAblock,X 
 1280STAblock,X 
 1290INX 
 1300CPX#9 
 1310BNEloop1 
 1320JSRmakchar
 1330.newchr 
 1340LDAprtflg 
 1350BNEprtrenab 
 1360LDA#255 
 1370BNEnewchrend 
 1380.prtrenab 
 1390LDA#1:JSR&FFEE 
 1400LDAblock:JSR&FFEE 
 1410LDA#3:JSR&FFEE 
 1420LDA#255:JSR&FFEE 
 1430LDA#2 
 1440.newchrend 
 1450JSR&FFEE 
 1460LDAprtflg 
 1470BEQntprt 
 1480LDA#norm MOD256 
 1490JSRprinter 
 1500.ntprt 
 1510PLA:TAY:PLA:TAX 
 1520JMPinc 
 1530.it TXA:PHA:TYA:PHA
 1540LDAprtflg 
 1550BEQnoprt2 
 1560LDA#ital MOD256 
 1570JSRprinter 
 1580.noprt2 
 1590JSRgetdef 
 1600LSR block+1 
 1610LSR block+2 
 1620ASL block+6 
 1630ASL block+7 
 1640JSRmakchar
 1650JMPnewchr 
 1660.makchar
 1670LDA#23:JSR&FFEE:LDA#255:JSR&FFEE
 1680LDX#1
 1690.chlp LDAblock,X
 1700JSR&FFEE
 1710INX:CPX#9:BNEchlp
 1720RTS
 1730.getdef LDA#&0A 
 1740LDX#block MOD256 
 1750LDY#block DIV256 
 1760JMP&FFF1 
 1770: 
 1780.printer 
 1790CMPstyle 
 1800BEQprtend 
 1810STAstyle 
 1820LDY#0 
 1830.prtloop 
 1840LDA#1 
 1850JSR&FFEE 
 1860LDA(style),Y 
 1870JSR&FFEE 
 1880INY 
 1890CPY#4 
 1900BNEprtloop 
 1910.prtend 
 1920RTS 
 1930: 
 1940.bold EQUS bold$ 
 1950.ital EQUS ital$ 
 1960.norm EQUS norm$ 
 2420]
 2430NEXT:ENDPROC

� CODE6 assembler
�6
� by Richard Dimond 
(� V.2 Feb 1998
2� 
<�assem 
F�"SAVE CODE6 900 "+�~P%
P�
Z:
d��assem 
n!addr=&70:style=&72:prtflg=&78
x*bdflg=&7A:itflg=&7B:?bdflg=0:?itflg=0 
�Dlines=&80:skiplines=&81:skip=&82:count=&83:modeflag=&84:temp=&85
�$?lines=60:?skiplines=12:?skip=0 
�block=&CF7:himem=&06
�boldcd=&1C:italcd=&1D
�:
�bold$=�27+�69+�27+�50 
�ital$=�27+�52+�27+�50 
�norm$=�27+�53+�27+�70 
�:
�
�i=0�2�2 
�P%=&900 
�
[OPTi 
�JMPclear
JMPprint
JMP&9999    \reserved
JMP&9999    \reserved
":
,
.clear
6LDAhimem:STAaddr
@LDAhimem+1:STAaddr+1
J.clrlp1 LDY#0
T.clrlp2 LDA#0:STA(addr),Y
^INY:BNE clrlp2
h
INCaddr+1
r
LDAaddr+1
|CMP#&40:BNE clrlp1
�RTS 
�:
�.print 
�LDA#0:STAbdflg:STAitflg
�LDA#&87:JSR&FFF4
�CPY#3:BNEmm
�LDA#0:STAmodeflag:JMPm
�.mm LDA#255:STAmodeflag
�.m LDA#&75:JSR&FFF4
�TXA:�#1
�STAprtflg 
�+BEQnprt:LDA#bold �256:STAstyle+1:.nprt 
�LDAhimem:STAaddr
LDAhimem+1:STAaddr+1
LDAmodeflag:BNEline
.prtlp1 LDY#0
&.prtlp2 LDA(addr),Y
0CMP#0:BEQrts 
:CMP#&0D:BEQnewl
D
JMPprt
N.ct BNE prtlp2
XINCaddr+1:JMP prtlp1
b
.rts RTS 
l=.newl JSR&FFE7:LDAskip:BEQnotskp:JMPskp:.notskp:INY:JMPct
vh.skp DECcount:BNEinc:LDAskiplines:STAcount:.skp1 JSR&FFE7:DECcount:BNEskp1:LDAlines:STAcount:JMPinc 
�F.prt CMP#boldcd:BNEnotbold:LDAbdflg:�#&FF:STAbdflg:JMPinc:.notbold
�ACMP#italcd:BNEnotital:LDAitflg:�#&FF:STAitflg:JMPinc:.notital
�CMP#&20:BCCinc
�\STAblock:LDAbdflg:BEQnotbd:JMPbd:.notbd LDAitflg:BEQnotit:JMPit:.notit LDAblock:JSR&FFEE
�..inc LDAmodeflag:BNEr:INY:JMPct:.r INY:RTS
�	.line
�LDY#0:LDA#39:STAcnt+1
�8.spl LDA(addr),Y:CMP#�" ":BNEnsp:INY:INCcnt+1:JMPspl
�.nsp
�.linelp LDA(addr),Y
�CMP#0:BEQrts1
�CMP#&0D:BEQtest
�
JSRprt
.cnt CPY#39:BEQnext
JMP linelp

.rts1 RTS
 .test INY:LDA(addr),Y
*JSRchkchr:BCSok2
4CMP#&0D:BEQok4
>CMP#&20:BEQok2
HDEY:DEY:LDA(addr),Y
RJSRchkchr:BCSok1
\CMP#&0D:BEQok3
fINY
pCMP#&20:BCCnn
z,LDA&318:BEQnospc:LDA#&20:JSR&FFEE:.nospc
�.nn INY:JMP cnt
�.ok1 INY:INY
�.ok2 JMPnewline
�.ok3 INY:INY
�.ok4 JSR&FFE7:JMPnewline
�.next LDA(addr),Y
�JSRchkchr:BEQskipchr
�CMP#&20:BEQnewline
� .delete DEY:LDA#&7F:JSR&FFEE
�LDA(addr),Y
�CMP#&20:BNEdelete
�.newline JSR&FFE7
�.incaddr CLC
TYA:ADCaddr:STAaddr
LDAaddr+1:ADC#0:STAaddr+1
JMPline
$.skipchr INY:LDA(addr),Y
.JSRchkchr:BEQskipchr
8JMPincaddr
B.chkchr
LLDA(addr),Y
VCMP#&2A:BEQchrok
`CMP#&7E:BEQchrok
jCMP#&3D:BEQchrok
tCLC:RTS
~.chrok SEC:RTS
�.bd TXA:PHA:TYA:PHA
�LDAprtflg 
�BEQnoprt1 
�LDA#bold �256 
�JSRprinter 
�.noprt1 
�JSRgetdef 
�
LDX#1 
�.loop1 
�LDAblock,X 
�
ASL A 
��Ablock,X 
STAblock,X 

INX 

CPX#9 

BNEloop1 
(JSRmakchar
2.newchr 
<LDAprtflg 
FBNEprtrenab 
PLDA#255 
ZBNEnewchrend 
d.prtrenab 
nLDA#1:JSR&FFEE 
xLDAblock:JSR&FFEE 
�LDA#3:JSR&FFEE 
�LDA#255:JSR&FFEE 
�
LDA#2 
�.newchrend 
�
JSR&FFEE 
�LDAprtflg 
�
BEQntprt 
�LDA#norm �256 
�JSRprinter 
�.ntprt 
�PLA:TAY:PLA:TAX 
�JMPinc 
�.it TXA:PHA:TYA:PHA
LDAprtflg 
BEQnoprt2 
LDA#ital �256 
"JSRprinter 
,.noprt2 
6JSRgetdef 
@LSR block+1 
JLSR block+2 
TASL block+6 
^ASL block+7 
hJSRmakchar
rJMPnewchr 
|.makchar
�$LDA#23:JSR&FFEE:LDA#255:JSR&FFEE
�	LDX#1
�.chlp LDAblock,X
�JSR&FFEE
�INX:CPX#9:BNEchlp
�RTS
�.getdef LDA#&0A 
�LDX#block �256 
�LDY#block �256 
�
JMP&FFF1 
�: 
�
.printer 
�
CMPstyle 
BEQprtend 

STAstyle 

LDY#0 
&
.prtloop 
0
LDA#1 
:
JSR&FFEE 
DLDA(style),Y 
N
JSR&FFEE 
XINY 
b
CPY#4 
lBNEprtloop 
v.prtend 
�RTS 
�: 
�.bold EQUS bold$ 
�.ital EQUS ital$ 
�.norm EQUS norm$ 
	t]
	~�:�
�
00000000  0d 00 0a 15 f4 20 43 4f  44 45 36 20 61 73 73 65  |..... CODE6 asse|
00000010  6d 62 6c 65 72 0d 00 14  06 eb 36 0d 00 1e 18 f4  |mbler.....6.....|
00000020  20 62 79 20 52 69 63 68  61 72 64 20 44 69 6d 6f  | by Richard Dimo|
00000030  6e 64 20 0d 00 28 12 f4  20 56 2e 32 20 46 65 62  |nd ..(.. V.2 Feb|
00000040  20 31 39 39 38 0d 00 32  06 f4 20 0d 00 3c 0b f2  | 1998..2.. ..<..|
00000050  61 73 73 65 6d 20 0d 00  46 1b ff 22 53 41 56 45  |assem ..F.."SAVE|
00000060  20 43 4f 44 45 36 20 39  30 30 20 22 2b c3 7e 50  | CODE6 900 "+.~P|
00000070  25 0d 00 50 05 e0 0d 00  5a 05 3a 0d 00 64 0c dd  |%..P....Z.:..d..|
00000080  f2 61 73 73 65 6d 20 0d  00 6e 21 61 64 64 72 3d  |.assem ..n!addr=|
00000090  26 37 30 3a 73 74 79 6c  65 3d 26 37 32 3a 70 72  |&70:style=&72:pr|
000000a0  74 66 6c 67 3d 26 37 38  0d 00 78 2a 62 64 66 6c  |tflg=&78..x*bdfl|
000000b0  67 3d 26 37 41 3a 69 74  66 6c 67 3d 26 37 42 3a  |g=&7A:itflg=&7B:|
000000c0  3f 62 64 66 6c 67 3d 30  3a 3f 69 74 66 6c 67 3d  |?bdflg=0:?itflg=|
000000d0  30 20 0d 00 82 44 6c 69  6e 65 73 3d 26 38 30 3a  |0 ...Dlines=&80:|
000000e0  73 6b 69 70 6c 69 6e 65  73 3d 26 38 31 3a 73 6b  |skiplines=&81:sk|
000000f0  69 70 3d 26 38 32 3a 63  6f 75 6e 74 3d 26 38 33  |ip=&82:count=&83|
00000100  3a 6d 6f 64 65 66 6c 61  67 3d 26 38 34 3a 74 65  |:modeflag=&84:te|
00000110  6d 70 3d 26 38 35 0d 00  8c 24 3f 6c 69 6e 65 73  |mp=&85...$?lines|
00000120  3d 36 30 3a 3f 73 6b 69  70 6c 69 6e 65 73 3d 31  |=60:?skiplines=1|
00000130  32 3a 3f 73 6b 69 70 3d  30 20 0d 00 96 18 62 6c  |2:?skip=0 ....bl|
00000140  6f 63 6b 3d 26 43 46 37  3a 68 69 6d 65 6d 3d 26  |ock=&CF7:himem=&|
00000150  30 36 0d 00 a0 19 62 6f  6c 64 63 64 3d 26 31 43  |06....boldcd=&1C|
00000160  3a 69 74 61 6c 63 64 3d  26 31 44 0d 00 aa 05 3a  |:italcd=&1D....:|
00000170  0d 00 b4 1a 62 6f 6c 64  24 3d bd 32 37 2b bd 36  |....bold$=.27+.6|
00000180  39 2b bd 32 37 2b bd 35  30 20 0d 00 be 1a 69 74  |9+.27+.50 ....it|
00000190  61 6c 24 3d bd 32 37 2b  bd 35 32 2b bd 32 37 2b  |al$=.27+.52+.27+|
000001a0  bd 35 30 20 0d 00 c8 1a  6e 6f 72 6d 24 3d bd 32  |.50 ....norm$=.2|
000001b0  37 2b bd 35 33 2b bd 32  37 2b bd 37 30 20 0d 00  |7+.53+.27+.70 ..|
000001c0  d2 05 3a 0d 00 dc 0d e3  69 3d 30 b8 32 88 32 20  |..:.....i=0.2.2 |
000001d0  0d 00 e6 0c 50 25 3d 26  39 30 30 20 0d 00 f0 0a  |....P%=&900 ....|
000001e0  5b 4f 50 54 69 20 0d 00  fa 0c 4a 4d 50 63 6c 65  |[OPTi ....JMPcle|
000001f0  61 72 0d 01 04 0c 4a 4d  50 70 72 69 6e 74 0d 01  |ar....JMPprint..|
00000200  0e 19 4a 4d 50 26 39 39  39 39 20 20 20 20 5c 72  |..JMP&9999    \r|
00000210  65 73 65 72 76 65 64 0d  01 18 19 4a 4d 50 26 39  |eserved....JMP&9|
00000220  39 39 39 20 20 20 20 5c  72 65 73 65 72 76 65 64  |999    \reserved|
00000230  0d 01 22 05 3a 0d 01 2c  0a 2e 63 6c 65 61 72 0d  |..".:..,..clear.|
00000240  01 36 14 4c 44 41 68 69  6d 65 6d 3a 53 54 41 61  |.6.LDAhimem:STAa|
00000250  64 64 72 0d 01 40 18 4c  44 41 68 69 6d 65 6d 2b  |ddr..@.LDAhimem+|
00000260  31 3a 53 54 41 61 64 64  72 2b 31 0d 01 4a 11 2e  |1:STAaddr+1..J..|
00000270  63 6c 72 6c 70 31 20 4c  44 59 23 30 0d 01 54 1d  |clrlp1 LDY#0..T.|
00000280  2e 63 6c 72 6c 70 32 20  4c 44 41 23 30 3a 53 54  |.clrlp2 LDA#0:ST|
00000290  41 28 61 64 64 72 29 2c  59 0d 01 5e 12 49 4e 59  |A(addr),Y..^.INY|
000002a0  3a 42 4e 45 20 63 6c 72  6c 70 32 0d 01 68 0d 49  |:BNE clrlp2..h.I|
000002b0  4e 43 61 64 64 72 2b 31  0d 01 72 0d 4c 44 41 61  |NCaddr+1..r.LDAa|
000002c0  64 64 72 2b 31 0d 01 7c  16 43 4d 50 23 26 34 30  |ddr+1..|.CMP#&40|
000002d0  3a 42 4e 45 20 63 6c 72  6c 70 31 0d 01 86 08 52  |:BNE clrlp1....R|
000002e0  54 53 20 0d 01 90 05 3a  0d 01 9a 0b 2e 70 72 69  |TS ....:.....pri|
000002f0  6e 74 20 0d 01 a4 1b 4c  44 41 23 30 3a 53 54 41  |nt ....LDA#0:STA|
00000300  62 64 66 6c 67 3a 53 54  41 69 74 66 6c 67 0d 01  |bdflg:STAitflg..|
00000310  ae 14 4c 44 41 23 26 38  37 3a 4a 53 52 26 46 46  |..LDA#&87:JSR&FF|
00000320  46 34 0d 01 b8 0f 43 50  59 23 33 3a 42 4e 45 6d  |F4....CPY#3:BNEm|
00000330  6d 0d 01 c2 1a 4c 44 41  23 30 3a 53 54 41 6d 6f  |m....LDA#0:STAmo|
00000340  64 65 66 6c 61 67 3a 4a  4d 50 6d 0d 01 cc 1b 2e  |deflag:JMPm.....|
00000350  6d 6d 20 4c 44 41 23 32  35 35 3a 53 54 41 6d 6f  |mm LDA#255:STAmo|
00000360  64 65 66 6c 61 67 0d 01  d6 17 2e 6d 20 4c 44 41  |deflag.....m LDA|
00000370  23 26 37 35 3a 4a 53 52  26 46 46 46 34 0d 01 e0  |#&75:JSR&FFF4...|
00000380  0b 54 58 41 3a 80 23 31  0d 01 ea 0e 53 54 41 70  |.TXA:.#1....STAp|
00000390  72 74 66 6c 67 20 0d 01  f4 2b 42 45 51 6e 70 72  |rtflg ...+BEQnpr|
000003a0  74 3a 4c 44 41 23 62 6f  6c 64 20 81 32 35 36 3a  |t:LDA#bold .256:|
000003b0  53 54 41 73 74 79 6c 65  2b 31 3a 2e 6e 70 72 74  |STAstyle+1:.nprt|
000003c0  20 0d 01 fe 14 4c 44 41  68 69 6d 65 6d 3a 53 54  | ....LDAhimem:ST|
000003d0  41 61 64 64 72 0d 02 08  18 4c 44 41 68 69 6d 65  |Aaddr....LDAhime|
000003e0  6d 2b 31 3a 53 54 41 61  64 64 72 2b 31 0d 02 12  |m+1:STAaddr+1...|
000003f0  17 4c 44 41 6d 6f 64 65  66 6c 61 67 3a 42 4e 45  |.LDAmodeflag:BNE|
00000400  6c 69 6e 65 0d 02 1c 11  2e 70 72 74 6c 70 31 20  |line.....prtlp1 |
00000410  4c 44 59 23 30 0d 02 26  17 2e 70 72 74 6c 70 32  |LDY#0..&..prtlp2|
00000420  20 4c 44 41 28 61 64 64  72 29 2c 59 0d 02 30 11  | LDA(addr),Y..0.|
00000430  43 4d 50 23 30 3a 42 45  51 72 74 73 20 0d 02 3a  |CMP#0:BEQrts ..:|
00000440  13 43 4d 50 23 26 30 44  3a 42 45 51 6e 65 77 6c  |.CMP#&0D:BEQnewl|
00000450  0d 02 44 0a 4a 4d 50 70  72 74 0d 02 4e 12 2e 63  |..D.JMPprt..N..c|
00000460  74 20 42 4e 45 20 70 72  74 6c 70 32 0d 02 58 18  |t BNE prtlp2..X.|
00000470  49 4e 43 61 64 64 72 2b  31 3a 4a 4d 50 20 70 72  |INCaddr+1:JMP pr|
00000480  74 6c 70 31 0d 02 62 0d  2e 72 74 73 20 52 54 53  |tlp1..b..rts RTS|
00000490  20 0d 02 6c 3d 2e 6e 65  77 6c 20 4a 53 52 26 46  | ..l=.newl JSR&F|
000004a0  46 45 37 3a 4c 44 41 73  6b 69 70 3a 42 45 51 6e  |FE7:LDAskip:BEQn|
000004b0  6f 74 73 6b 70 3a 4a 4d  50 73 6b 70 3a 2e 6e 6f  |otskp:JMPskp:.no|
000004c0  74 73 6b 70 3a 49 4e 59  3a 4a 4d 50 63 74 0d 02  |tskp:INY:JMPct..|
000004d0  76 68 2e 73 6b 70 20 44  45 43 63 6f 75 6e 74 3a  |vh.skp DECcount:|
000004e0  42 4e 45 69 6e 63 3a 4c  44 41 73 6b 69 70 6c 69  |BNEinc:LDAskipli|
000004f0  6e 65 73 3a 53 54 41 63  6f 75 6e 74 3a 2e 73 6b  |nes:STAcount:.sk|
00000500  70 31 20 4a 53 52 26 46  46 45 37 3a 44 45 43 63  |p1 JSR&FFE7:DECc|
00000510  6f 75 6e 74 3a 42 4e 45  73 6b 70 31 3a 4c 44 41  |ount:BNEskp1:LDA|
00000520  6c 69 6e 65 73 3a 53 54  41 63 6f 75 6e 74 3a 4a  |lines:STAcount:J|
00000530  4d 50 69 6e 63 20 0d 02  80 46 2e 70 72 74 20 43  |MPinc ...F.prt C|
00000540  4d 50 23 62 6f 6c 64 63  64 3a 42 4e 45 6e 6f 74  |MP#boldcd:BNEnot|
00000550  62 6f 6c 64 3a 4c 44 41  62 64 66 6c 67 3a 82 23  |bold:LDAbdflg:.#|
00000560  26 46 46 3a 53 54 41 62  64 66 6c 67 3a 4a 4d 50  |&FF:STAbdflg:JMP|
00000570  69 6e 63 3a 2e 6e 6f 74  62 6f 6c 64 0d 02 8a 41  |inc:.notbold...A|
00000580  43 4d 50 23 69 74 61 6c  63 64 3a 42 4e 45 6e 6f  |CMP#italcd:BNEno|
00000590  74 69 74 61 6c 3a 4c 44  41 69 74 66 6c 67 3a 82  |tital:LDAitflg:.|
000005a0  23 26 46 46 3a 53 54 41  69 74 66 6c 67 3a 4a 4d  |#&FF:STAitflg:JM|
000005b0  50 69 6e 63 3a 2e 6e 6f  74 69 74 61 6c 0d 02 94  |Pinc:.notital...|
000005c0  12 43 4d 50 23 26 32 30  3a 42 43 43 69 6e 63 0d  |.CMP#&20:BCCinc.|
000005d0  02 9e 5c 53 54 41 62 6c  6f 63 6b 3a 4c 44 41 62  |..\STAblock:LDAb|
000005e0  64 66 6c 67 3a 42 45 51  6e 6f 74 62 64 3a 4a 4d  |dflg:BEQnotbd:JM|
000005f0  50 62 64 3a 2e 6e 6f 74  62 64 20 4c 44 41 69 74  |Pbd:.notbd LDAit|
00000600  66 6c 67 3a 42 45 51 6e  6f 74 69 74 3a 4a 4d 50  |flg:BEQnotit:JMP|
00000610  69 74 3a 2e 6e 6f 74 69  74 20 4c 44 41 62 6c 6f  |it:.notit LDAblo|
00000620  63 6b 3a 4a 53 52 26 46  46 45 45 0d 02 a8 2e 2e  |ck:JSR&FFEE.....|
00000630  69 6e 63 20 4c 44 41 6d  6f 64 65 66 6c 61 67 3a  |inc LDAmodeflag:|
00000640  42 4e 45 72 3a 49 4e 59  3a 4a 4d 50 63 74 3a 2e  |BNEr:INY:JMPct:.|
00000650  72 20 49 4e 59 3a 52 54  53 0d 02 b2 09 2e 6c 69  |r INY:RTS.....li|
00000660  6e 65 0d 02 bc 19 4c 44  59 23 30 3a 4c 44 41 23  |ne....LDY#0:LDA#|
00000670  33 39 3a 53 54 41 63 6e  74 2b 31 0d 02 c6 38 2e  |39:STAcnt+1...8.|
00000680  73 70 6c 20 4c 44 41 28  61 64 64 72 29 2c 59 3a  |spl LDA(addr),Y:|
00000690  43 4d 50 23 97 22 20 22  3a 42 4e 45 6e 73 70 3a  |CMP#." ":BNEnsp:|
000006a0  49 4e 59 3a 49 4e 43 63  6e 74 2b 31 3a 4a 4d 50  |INY:INCcnt+1:JMP|
000006b0  73 70 6c 0d 02 d0 08 2e  6e 73 70 0d 02 da 17 2e  |spl.....nsp.....|
000006c0  6c 69 6e 65 6c 70 20 4c  44 41 28 61 64 64 72 29  |linelp LDA(addr)|
000006d0  2c 59 0d 02 e4 11 43 4d  50 23 30 3a 42 45 51 72  |,Y....CMP#0:BEQr|
000006e0  74 73 31 0d 02 ee 13 43  4d 50 23 26 30 44 3a 42  |ts1....CMP#&0D:B|
000006f0  45 51 74 65 73 74 0d 02  f8 0a 4a 53 52 70 72 74  |EQtest....JSRprt|
00000700  0d 03 02 17 2e 63 6e 74  20 43 50 59 23 33 39 3a  |.....cnt CPY#39:|
00000710  42 45 51 6e 65 78 74 0d  03 0c 0e 4a 4d 50 20 6c  |BEQnext....JMP l|
00000720  69 6e 65 6c 70 0d 03 16  0d 2e 72 74 73 31 20 52  |inelp.....rts1 R|
00000730  54 53 0d 03 20 19 2e 74  65 73 74 20 49 4e 59 3a  |TS.. ..test INY:|
00000740  4c 44 41 28 61 64 64 72  29 2c 59 0d 03 2a 14 4a  |LDA(addr),Y..*.J|
00000750  53 52 63 68 6b 63 68 72  3a 42 43 53 6f 6b 32 0d  |SRchkchr:BCSok2.|
00000760  03 34 12 43 4d 50 23 26  30 44 3a 42 45 51 6f 6b  |.4.CMP#&0D:BEQok|
00000770  34 0d 03 3e 12 43 4d 50  23 26 32 30 3a 42 45 51  |4..>.CMP#&20:BEQ|
00000780  6f 6b 32 0d 03 48 17 44  45 59 3a 44 45 59 3a 4c  |ok2..H.DEY:DEY:L|
00000790  44 41 28 61 64 64 72 29  2c 59 0d 03 52 14 4a 53  |DA(addr),Y..R.JS|
000007a0  52 63 68 6b 63 68 72 3a  42 43 53 6f 6b 31 0d 03  |Rchkchr:BCSok1..|
000007b0  5c 12 43 4d 50 23 26 30  44 3a 42 45 51 6f 6b 33  |\.CMP#&0D:BEQok3|
000007c0  0d 03 66 07 49 4e 59 0d  03 70 11 43 4d 50 23 26  |..f.INY..p.CMP#&|
000007d0  32 30 3a 42 43 43 6e 6e  0d 03 7a 2c 4c 44 41 26  |20:BCCnn..z,LDA&|
000007e0  33 31 38 3a 42 45 51 6e  6f 73 70 63 3a 4c 44 41  |318:BEQnospc:LDA|
000007f0  23 26 32 30 3a 4a 53 52  26 46 46 45 45 3a 2e 6e  |#&20:JSR&FFEE:.n|
00000800  6f 73 70 63 0d 03 84 13  2e 6e 6e 20 49 4e 59 3a  |ospc.....nn INY:|
00000810  4a 4d 50 20 63 6e 74 0d  03 8e 10 2e 6f 6b 31 20  |JMP cnt.....ok1 |
00000820  49 4e 59 3a 49 4e 59 0d  03 98 13 2e 6f 6b 32 20  |INY:INY.....ok2 |
00000830  4a 4d 50 6e 65 77 6c 69  6e 65 0d 03 a2 10 2e 6f  |JMPnewline.....o|
00000840  6b 33 20 49 4e 59 3a 49  4e 59 0d 03 ac 1c 2e 6f  |k3 INY:INY.....o|
00000850  6b 34 20 4a 53 52 26 46  46 45 37 3a 4a 4d 50 6e  |k4 JSR&FFE7:JMPn|
00000860  65 77 6c 69 6e 65 0d 03  b6 15 2e 6e 65 78 74 20  |ewline.....next |
00000870  4c 44 41 28 61 64 64 72  29 2c 59 0d 03 c0 18 4a  |LDA(addr),Y....J|
00000880  53 52 63 68 6b 63 68 72  3a 42 45 51 73 6b 69 70  |SRchkchr:BEQskip|
00000890  63 68 72 0d 03 ca 16 43  4d 50 23 26 32 30 3a 42  |chr....CMP#&20:B|
000008a0  45 51 6e 65 77 6c 69 6e  65 0d 03 d4 20 2e 64 65  |EQnewline... .de|
000008b0  6c 65 74 65 20 44 45 59  3a 4c 44 41 23 26 37 46  |lete DEY:LDA#&7F|
000008c0  3a 4a 53 52 26 46 46 45  45 0d 03 de 0f 4c 44 41  |:JSR&FFEE....LDA|
000008d0  28 61 64 64 72 29 2c 59  0d 03 e8 15 43 4d 50 23  |(addr),Y....CMP#|
000008e0  26 32 30 3a 42 4e 45 64  65 6c 65 74 65 0d 03 f2  |&20:BNEdelete...|
000008f0  15 2e 6e 65 77 6c 69 6e  65 20 4a 53 52 26 46 46  |..newline JSR&FF|
00000900  45 37 0d 03 fc 10 2e 69  6e 63 61 64 64 72 20 43  |E7.....incaddr C|
00000910  4c 43 0d 04 06 17 54 59  41 3a 41 44 43 61 64 64  |LC....TYA:ADCadd|
00000920  72 3a 53 54 41 61 64 64  72 0d 04 10 1d 4c 44 41  |r:STAaddr....LDA|
00000930  61 64 64 72 2b 31 3a 41  44 43 23 30 3a 53 54 41  |addr+1:ADC#0:STA|
00000940  61 64 64 72 2b 31 0d 04  1a 0b 4a 4d 50 6c 69 6e  |addr+1....JMPlin|
00000950  65 0d 04 24 1c 2e 73 6b  69 70 63 68 72 20 49 4e  |e..$..skipchr IN|
00000960  59 3a 4c 44 41 28 61 64  64 72 29 2c 59 0d 04 2e  |Y:LDA(addr),Y...|
00000970  18 4a 53 52 63 68 6b 63  68 72 3a 42 45 51 73 6b  |.JSRchkchr:BEQsk|
00000980  69 70 63 68 72 0d 04 38  0e 4a 4d 50 69 6e 63 61  |ipchr..8.JMPinca|
00000990  64 64 72 0d 04 42 0b 2e  63 68 6b 63 68 72 0d 04  |ddr..B..chkchr..|
000009a0  4c 0f 4c 44 41 28 61 64  64 72 29 2c 59 0d 04 56  |L.LDA(addr),Y..V|
000009b0  14 43 4d 50 23 26 32 41  3a 42 45 51 63 68 72 6f  |.CMP#&2A:BEQchro|
000009c0  6b 0d 04 60 14 43 4d 50  23 26 37 45 3a 42 45 51  |k..`.CMP#&7E:BEQ|
000009d0  63 68 72 6f 6b 0d 04 6a  14 43 4d 50 23 26 33 44  |chrok..j.CMP#&3D|
000009e0  3a 42 45 51 63 68 72 6f  6b 0d 04 74 0b 43 4c 43  |:BEQchrok..t.CLC|
000009f0  3a 52 54 53 0d 04 7e 12  2e 63 68 72 6f 6b 20 53  |:RTS..~..chrok S|
00000a00  45 43 3a 52 54 53 0d 04  88 17 2e 62 64 20 54 58  |EC:RTS.....bd TX|
00000a10  41 3a 50 48 41 3a 54 59  41 3a 50 48 41 0d 04 92  |A:PHA:TYA:PHA...|
00000a20  0e 4c 44 41 70 72 74 66  6c 67 20 0d 04 9c 0e 42  |.LDAprtflg ....B|
00000a30  45 51 6e 6f 70 72 74 31  20 0d 04 a6 12 4c 44 41  |EQnoprt1 ....LDA|
00000a40  23 62 6f 6c 64 20 83 32  35 36 20 0d 04 b0 0f 4a  |#bold .256 ....J|
00000a50  53 52 70 72 69 6e 74 65  72 20 0d 04 ba 0c 2e 6e  |SRprinter .....n|
00000a60  6f 70 72 74 31 20 0d 04  c4 0e 4a 53 52 67 65 74  |oprt1 ....JSRget|
00000a70  64 65 66 20 0d 04 ce 0a  4c 44 58 23 31 20 0d 04  |def ....LDX#1 ..|
00000a80  d8 0b 2e 6c 6f 6f 70 31  20 0d 04 e2 0f 4c 44 41  |...loop1 ....LDA|
00000a90  62 6c 6f 63 6b 2c 58 20  0d 04 ec 0a 41 53 4c 20  |block,X ....ASL |
00000aa0  41 20 0d 04 f6 0e 84 41  62 6c 6f 63 6b 2c 58 20  |A .....Ablock,X |
00000ab0  0d 05 00 0f 53 54 41 62  6c 6f 63 6b 2c 58 20 0d  |....STAblock,X .|
00000ac0  05 0a 08 49 4e 58 20 0d  05 14 0a 43 50 58 23 39  |...INX ....CPX#9|
00000ad0  20 0d 05 1e 0d 42 4e 45  6c 6f 6f 70 31 20 0d 05  | ....BNEloop1 ..|
00000ae0  28 0e 4a 53 52 6d 61 6b  63 68 61 72 0d 05 32 0c  |(.JSRmakchar..2.|
00000af0  2e 6e 65 77 63 68 72 20  0d 05 3c 0e 4c 44 41 70  |.newchr ..<.LDAp|
00000b00  72 74 66 6c 67 20 0d 05  46 10 42 4e 45 70 72 74  |rtflg ..F.BNEprt|
00000b10  72 65 6e 61 62 20 0d 05  50 0c 4c 44 41 23 32 35  |renab ..P.LDA#25|
00000b20  35 20 0d 05 5a 11 42 4e  45 6e 65 77 63 68 72 65  |5 ..Z.BNEnewchre|
00000b30  6e 64 20 0d 05 64 0e 2e  70 72 74 72 65 6e 61 62  |nd ..d..prtrenab|
00000b40  20 0d 05 6e 13 4c 44 41  23 31 3a 4a 53 52 26 46  | ..n.LDA#1:JSR&F|
00000b50  46 45 45 20 0d 05 78 16  4c 44 41 62 6c 6f 63 6b  |FEE ..x.LDAblock|
00000b60  3a 4a 53 52 26 46 46 45  45 20 0d 05 82 13 4c 44  |:JSR&FFEE ....LD|
00000b70  41 23 33 3a 4a 53 52 26  46 46 45 45 20 0d 05 8c  |A#3:JSR&FFEE ...|
00000b80  15 4c 44 41 23 32 35 35  3a 4a 53 52 26 46 46 45  |.LDA#255:JSR&FFE|
00000b90  45 20 0d 05 96 0a 4c 44  41 23 32 20 0d 05 a0 0f  |E ....LDA#2 ....|
00000ba0  2e 6e 65 77 63 68 72 65  6e 64 20 0d 05 aa 0d 4a  |.newchrend ....J|
00000bb0  53 52 26 46 46 45 45 20  0d 05 b4 0e 4c 44 41 70  |SR&FFEE ....LDAp|
00000bc0  72 74 66 6c 67 20 0d 05  be 0d 42 45 51 6e 74 70  |rtflg ....BEQntp|
00000bd0  72 74 20 0d 05 c8 12 4c  44 41 23 6e 6f 72 6d 20  |rt ....LDA#norm |
00000be0  83 32 35 36 20 0d 05 d2  0f 4a 53 52 70 72 69 6e  |.256 ....JSRprin|
00000bf0  74 65 72 20 0d 05 dc 0b  2e 6e 74 70 72 74 20 0d  |ter .....ntprt .|
00000c00  05 e6 14 50 4c 41 3a 54  41 59 3a 50 4c 41 3a 54  |...PLA:TAY:PLA:T|
00000c10  41 58 20 0d 05 f0 0b 4a  4d 50 69 6e 63 20 0d 05  |AX ....JMPinc ..|
00000c20  fa 17 2e 69 74 20 54 58  41 3a 50 48 41 3a 54 59  |...it TXA:PHA:TY|
00000c30  41 3a 50 48 41 0d 06 04  0e 4c 44 41 70 72 74 66  |A:PHA....LDAprtf|
00000c40  6c 67 20 0d 06 0e 0e 42  45 51 6e 6f 70 72 74 32  |lg ....BEQnoprt2|
00000c50  20 0d 06 18 12 4c 44 41  23 69 74 61 6c 20 83 32  | ....LDA#ital .2|
00000c60  35 36 20 0d 06 22 0f 4a  53 52 70 72 69 6e 74 65  |56 ..".JSRprinte|
00000c70  72 20 0d 06 2c 0c 2e 6e  6f 70 72 74 32 20 0d 06  |r ..,..noprt2 ..|
00000c80  36 0e 4a 53 52 67 65 74  64 65 66 20 0d 06 40 10  |6.JSRgetdef ..@.|
00000c90  4c 53 52 20 62 6c 6f 63  6b 2b 31 20 0d 06 4a 10  |LSR block+1 ..J.|
00000ca0  4c 53 52 20 62 6c 6f 63  6b 2b 32 20 0d 06 54 10  |LSR block+2 ..T.|
00000cb0  41 53 4c 20 62 6c 6f 63  6b 2b 36 20 0d 06 5e 10  |ASL block+6 ..^.|
00000cc0  41 53 4c 20 62 6c 6f 63  6b 2b 37 20 0d 06 68 0e  |ASL block+7 ..h.|
00000cd0  4a 53 52 6d 61 6b 63 68  61 72 0d 06 72 0e 4a 4d  |JSRmakchar..r.JM|
00000ce0  50 6e 65 77 63 68 72 20  0d 06 7c 0c 2e 6d 61 6b  |Pnewchr ..|..mak|
00000cf0  63 68 61 72 0d 06 86 24  4c 44 41 23 32 33 3a 4a  |char...$LDA#23:J|
00000d00  53 52 26 46 46 45 45 3a  4c 44 41 23 32 35 35 3a  |SR&FFEE:LDA#255:|
00000d10  4a 53 52 26 46 46 45 45  0d 06 90 09 4c 44 58 23  |JSR&FFEE....LDX#|
00000d20  31 0d 06 9a 14 2e 63 68  6c 70 20 4c 44 41 62 6c  |1.....chlp LDAbl|
00000d30  6f 63 6b 2c 58 0d 06 a4  0c 4a 53 52 26 46 46 45  |ock,X....JSR&FFE|
00000d40  45 0d 06 ae 15 49 4e 58  3a 43 50 58 23 39 3a 42  |E....INX:CPX#9:B|
00000d50  4e 45 63 68 6c 70 0d 06  b8 07 52 54 53 0d 06 c2  |NEchlp....RTS...|
00000d60  14 2e 67 65 74 64 65 66  20 4c 44 41 23 26 30 41  |..getdef LDA#&0A|
00000d70  20 0d 06 cc 13 4c 44 58  23 62 6c 6f 63 6b 20 83  | ....LDX#block .|
00000d80  32 35 36 20 0d 06 d6 13  4c 44 59 23 62 6c 6f 63  |256 ....LDY#bloc|
00000d90  6b 20 81 32 35 36 20 0d  06 e0 0d 4a 4d 50 26 46  |k .256 ....JMP&F|
00000da0  46 46 31 20 0d 06 ea 06  3a 20 0d 06 f4 0d 2e 70  |FF1 ....: .....p|
00000db0  72 69 6e 74 65 72 20 0d  06 fe 0d 43 4d 50 73 74  |rinter ....CMPst|
00000dc0  79 6c 65 20 0d 07 08 0e  42 45 51 70 72 74 65 6e  |yle ....BEQprten|
00000dd0  64 20 0d 07 12 0d 53 54  41 73 74 79 6c 65 20 0d  |d ....STAstyle .|
00000de0  07 1c 0a 4c 44 59 23 30  20 0d 07 26 0d 2e 70 72  |...LDY#0 ..&..pr|
00000df0  74 6c 6f 6f 70 20 0d 07  30 0a 4c 44 41 23 31 20  |tloop ..0.LDA#1 |
00000e00  0d 07 3a 0d 4a 53 52 26  46 46 45 45 20 0d 07 44  |..:.JSR&FFEE ..D|
00000e10  11 4c 44 41 28 73 74 79  6c 65 29 2c 59 20 0d 07  |.LDA(style),Y ..|
00000e20  4e 0d 4a 53 52 26 46 46  45 45 20 0d 07 58 08 49  |N.JSR&FFEE ..X.I|
00000e30  4e 59 20 0d 07 62 0a 43  50 59 23 34 20 0d 07 6c  |NY ..b.CPY#4 ..l|
00000e40  0f 42 4e 45 70 72 74 6c  6f 6f 70 20 0d 07 76 0c  |.BNEprtloop ..v.|
00000e50  2e 70 72 74 65 6e 64 20  0d 07 80 08 52 54 53 20  |.prtend ....RTS |
00000e60  0d 07 8a 06 3a 20 0d 07  94 15 2e 62 6f 6c 64 20  |....: .....bold |
00000e70  45 51 55 53 20 62 6f 6c  64 24 20 0d 07 9e 15 2e  |EQUS bold$ .....|
00000e80  69 74 61 6c 20 45 51 55  53 20 69 74 61 6c 24 20  |ital EQUS ital$ |
00000e90  0d 07 a8 15 2e 6e 6f 72  6d 20 45 51 55 53 20 6e  |.....norm EQUS n|
00000ea0  6f 72 6d 24 20 0d 09 74  05 5d 0d 09 7e 07 ed 3a  |orm$ ..t.]..~..:|
00000eb0  e1 0d ff                                          |...|
00000eb3
CD7SRC.m0
CD7SRC.m1
CD7SRC.m2
CD7SRC.m4
CD7SRC.m5