Home » Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_18.ADF » F/C/DecMsrc
F/C/DecMsrc
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_18.ADF |
Filename: | F/C/DecMsrc |
Read OK: | ✔ |
File size: | 0451 bytes |
Load address: | FFFF1D00 |
Exec address: | FFFF8023 |
Duplicates
There is 1 duplicate copy of this file in the archive:
- AEW website » eug » eug_5_25_discs_Eug-18_D-EUG18.dsd » C.DecMsrc
- Personal collection » Acorn ADFS disks » Electron_User_Group » EUG_18.ADF » F/C/DecMsrc
File contents
10REM **************************** 20REM TEXT COMPRESSION CODE Source 30REM by Richard Dimond 40REM March 1994 50REM **************************** 60REM 70MODE6 110FORp=0TO2STEP2 120P%=&B00 130[OPTp 135LDA#0:STA&70:LDA#&28:STA&71 140LDY#0:STYcount:CLC 150.loop LDA(&70),Y 160JMPdecode 170.decode 180STAtemp 190AND#&F0:LSR A:LSR A:LSR A:LSR A 200STAnib:LDAtemp:AND#&0F:STAnib+1 210LDX#0:.xlp 220LDAflag:CMP#&FF:BNEn1:LDAnib,X:CMP#8:BCCless:JSRout:.less 230.n1 LDAflag:CMP#&FF:BNEaa:LDAnib,X:CMP#8:BCSaa:LDAnib,X:STAi:LDA#0:STAflag:JMPnext 240.aa CLC:LDAflag:CMP#0:BNEnext:LDAnib,X:STAj:JSRppr:LDA#&FF:STAflag 250.next INX:CPX#2:BNExlp:INCcount:LDYcount:CPY#0:BNEo:INC&71:.o LDAtemp:CMP#0:BNEloop:RTS 260.out SBC#8:TAY:LDAdat,Y:JSR&FFEE:RTS 270.ppr LDAi:ASL A:ASL A:ASL A:ASL A:STAtemp:LDAj:ORAtemp:STAtemp:CMP#&0D:BNEprt:.lf JMP&FFE7:.prt JMP&FFEE 280.dat EQUS" etaonri" 290.nib EQUW0:.i EQUB0:.j EQUB0:.tno EQUB0:.temp EQUB0:.count EQUB0:.flag EQUB-1 300LDA#0:STA&72:LDA#&28:STA&73 310.clrlp LDY#0 320.clrlp1 LDA#0:STA(&72),Y 330INY:BNEclrlp1:INC&73 340LDA&73:CMP#&40:BNEclrlp 350RTS 360] 370NEXT 380OSCLI"SAVE DecM/C B00 "+STR$~P%
"� **************************** "� TEXT COMPRESSION CODE Source � by Richard Dimond (� March 1994 2"� **************************** <� F�6 n�p=0�2�2 xP%=&B00 � [OPTp �LDA#0:STA&70:LDA#&28:STA&71 �LDY#0:STYcount:CLC �.loop LDA(&70),Y � JMPdecode �.decode �STAtemp �!�#&F0:LSR A:LSR A:LSR A:LSR A �!STAnib:LDAtemp:�#&0F:STAnib+1 �LDX#0:.xlp �=LDAflag:CMP#&FF:BNEn1:LDAnib,X:CMP#8:BCCless:JSRout:.less �W.n1 LDAflag:CMP#&FF:BNEaa:LDAnib,X:CMP#8:BCSaa:LDAnib,X:STAi:LDA#0:STAflag:JMPnext �F.aa CLC:LDAflag:CMP#0:BNEnext:LDAnib,X:STAj:JSRppr:LDA#&FF:STAflag �[.next INX:CPX#2:BNExlp:INCcount:LDYcount:CPY#0:BNEo:INC&71:.o LDAtemp:CMP#0:BNEloop:RTS (.out SBC#8:TAY:LDAdat,Y:JSR&FFEE:RTS k.ppr LDAi:ASL A:ASL A:ASL A:ASL A:STAtemp:LDAj:�Atemp:STAtemp:CMP#&0D:BNEprt:.lf JMP&FFE7:.prt JMP&FFEE .dat EQUS" etaonri" "Q.nib EQUW0:.i EQUB0:.j EQUB0:.tno EQUB0:.temp EQUB0:.count EQUB0:.flag EQUB-1 ,LDA#0:STA&72:LDA#&28:STA&73 6.clrlp LDY#0 @.clrlp1 LDA#0:STA(&72),Y JINY:BNEclrlp1:INC&73 TLDA&73:CMP#&40:BNEclrlp ^RTS h] r� |�"SAVE DecM/C B00 "+�~P% �
00000000 0d 00 0a 22 f4 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |...". **********| 00000010 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| 00000020 2a 2a 0d 00 14 22 f4 20 54 45 58 54 20 43 4f 4d |**...". TEXT COM| 00000030 50 52 45 53 53 49 4f 4e 20 43 4f 44 45 20 53 6f |PRESSION CODE So| 00000040 75 72 63 65 0d 00 1e 17 f4 20 62 79 20 52 69 63 |urce..... by Ric| 00000050 68 61 72 64 20 44 69 6d 6f 6e 64 0d 00 28 10 f4 |hard Dimond..(..| 00000060 20 4d 61 72 63 68 20 31 39 39 34 0d 00 32 22 f4 | March 1994..2".| 00000070 20 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a | ***************| 00000080 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 00 3c |*************..<| 00000090 05 f4 0d 00 46 06 eb 36 0d 00 6e 0c e3 70 3d 30 |....F..6..n..p=0| 000000a0 b8 32 88 32 0d 00 78 0b 50 25 3d 26 42 30 30 0d |.2.2..x.P%=&B00.| 000000b0 00 82 09 5b 4f 50 54 70 0d 00 87 1f 4c 44 41 23 |...[OPTp....LDA#| 000000c0 30 3a 53 54 41 26 37 30 3a 4c 44 41 23 26 32 38 |0:STA&70:LDA#&28| 000000d0 3a 53 54 41 26 37 31 0d 00 8c 16 4c 44 59 23 30 |:STA&71....LDY#0| 000000e0 3a 53 54 59 63 6f 75 6e 74 3a 43 4c 43 0d 00 96 |:STYcount:CLC...| 000000f0 14 2e 6c 6f 6f 70 20 4c 44 41 28 26 37 30 29 2c |..loop LDA(&70),| 00000100 59 0d 00 a0 0d 4a 4d 50 64 65 63 6f 64 65 0d 00 |Y....JMPdecode..| 00000110 aa 0b 2e 64 65 63 6f 64 65 0d 00 b4 0b 53 54 41 |...decode....STA| 00000120 74 65 6d 70 0d 00 be 21 80 23 26 46 30 3a 4c 53 |temp...!.#&F0:LS| 00000130 52 20 41 3a 4c 53 52 20 41 3a 4c 53 52 20 41 3a |R A:LSR A:LSR A:| 00000140 4c 53 52 20 41 0d 00 c8 21 53 54 41 6e 69 62 3a |LSR A...!STAnib:| 00000150 4c 44 41 74 65 6d 70 3a 80 23 26 30 46 3a 53 54 |LDAtemp:.#&0F:ST| 00000160 41 6e 69 62 2b 31 0d 00 d2 0e 4c 44 58 23 30 3a |Anib+1....LDX#0:| 00000170 2e 78 6c 70 0d 00 dc 3d 4c 44 41 66 6c 61 67 3a |.xlp...=LDAflag:| 00000180 43 4d 50 23 26 46 46 3a 42 4e 45 6e 31 3a 4c 44 |CMP#&FF:BNEn1:LD| 00000190 41 6e 69 62 2c 58 3a 43 4d 50 23 38 3a 42 43 43 |Anib,X:CMP#8:BCC| 000001a0 6c 65 73 73 3a 4a 53 52 6f 75 74 3a 2e 6c 65 73 |less:JSRout:.les| 000001b0 73 0d 00 e6 57 2e 6e 31 20 4c 44 41 66 6c 61 67 |s...W.n1 LDAflag| 000001c0 3a 43 4d 50 23 26 46 46 3a 42 4e 45 61 61 3a 4c |:CMP#&FF:BNEaa:L| 000001d0 44 41 6e 69 62 2c 58 3a 43 4d 50 23 38 3a 42 43 |DAnib,X:CMP#8:BC| 000001e0 53 61 61 3a 4c 44 41 6e 69 62 2c 58 3a 53 54 41 |Saa:LDAnib,X:STA| 000001f0 69 3a 4c 44 41 23 30 3a 53 54 41 66 6c 61 67 3a |i:LDA#0:STAflag:| 00000200 4a 4d 50 6e 65 78 74 20 0d 00 f0 46 2e 61 61 20 |JMPnext ...F.aa | 00000210 43 4c 43 3a 4c 44 41 66 6c 61 67 3a 43 4d 50 23 |CLC:LDAflag:CMP#| 00000220 30 3a 42 4e 45 6e 65 78 74 3a 4c 44 41 6e 69 62 |0:BNEnext:LDAnib| 00000230 2c 58 3a 53 54 41 6a 3a 4a 53 52 70 70 72 3a 4c |,X:STAj:JSRppr:L| 00000240 44 41 23 26 46 46 3a 53 54 41 66 6c 61 67 0d 00 |DA#&FF:STAflag..| 00000250 fa 5b 2e 6e 65 78 74 20 49 4e 58 3a 43 50 58 23 |.[.next INX:CPX#| 00000260 32 3a 42 4e 45 78 6c 70 3a 49 4e 43 63 6f 75 6e |2:BNExlp:INCcoun| 00000270 74 3a 4c 44 59 63 6f 75 6e 74 3a 43 50 59 23 30 |t:LDYcount:CPY#0| 00000280 3a 42 4e 45 6f 3a 49 4e 43 26 37 31 3a 2e 6f 20 |:BNEo:INC&71:.o | 00000290 4c 44 41 74 65 6d 70 3a 43 4d 50 23 30 3a 42 4e |LDAtemp:CMP#0:BN| 000002a0 45 6c 6f 6f 70 3a 52 54 53 0d 01 04 28 2e 6f 75 |Eloop:RTS...(.ou| 000002b0 74 20 53 42 43 23 38 3a 54 41 59 3a 4c 44 41 64 |t SBC#8:TAY:LDAd| 000002c0 61 74 2c 59 3a 4a 53 52 26 46 46 45 45 3a 52 54 |at,Y:JSR&FFEE:RT| 000002d0 53 0d 01 0e 6b 2e 70 70 72 20 4c 44 41 69 3a 41 |S...k.ppr LDAi:A| 000002e0 53 4c 20 41 3a 41 53 4c 20 41 3a 41 53 4c 20 41 |SL A:ASL A:ASL A| 000002f0 3a 41 53 4c 20 41 3a 53 54 41 74 65 6d 70 3a 4c |:ASL A:STAtemp:L| 00000300 44 41 6a 3a 84 41 74 65 6d 70 3a 53 54 41 74 65 |DAj:.Atemp:STAte| 00000310 6d 70 3a 43 4d 50 23 26 30 44 3a 42 4e 45 70 72 |mp:CMP#&0D:BNEpr| 00000320 74 3a 2e 6c 66 20 4a 4d 50 26 46 46 45 37 3a 2e |t:.lf JMP&FFE7:.| 00000330 70 72 74 20 4a 4d 50 26 46 46 45 45 0d 01 18 17 |prt JMP&FFEE....| 00000340 2e 64 61 74 20 45 51 55 53 22 20 65 74 61 6f 6e |.dat EQUS" etaon| 00000350 72 69 22 0d 01 22 51 2e 6e 69 62 20 45 51 55 57 |ri".."Q.nib EQUW| 00000360 30 3a 2e 69 20 45 51 55 42 30 3a 2e 6a 20 45 51 |0:.i EQUB0:.j EQ| 00000370 55 42 30 3a 2e 74 6e 6f 20 45 51 55 42 30 3a 2e |UB0:.tno EQUB0:.| 00000380 74 65 6d 70 20 45 51 55 42 30 3a 2e 63 6f 75 6e |temp EQUB0:.coun| 00000390 74 20 45 51 55 42 30 3a 2e 66 6c 61 67 20 45 51 |t EQUB0:.flag EQ| 000003a0 55 42 2d 31 0d 01 2c 1f 4c 44 41 23 30 3a 53 54 |UB-1..,.LDA#0:ST| 000003b0 41 26 37 32 3a 4c 44 41 23 26 32 38 3a 53 54 41 |A&72:LDA#&28:STA| 000003c0 26 37 33 0d 01 36 10 2e 63 6c 72 6c 70 20 4c 44 |&73..6..clrlp LD| 000003d0 59 23 30 0d 01 40 1c 2e 63 6c 72 6c 70 31 20 4c |Y#0..@..clrlp1 L| 000003e0 44 41 23 30 3a 53 54 41 28 26 37 32 29 2c 59 0d |DA#0:STA(&72),Y.| 000003f0 01 4a 18 49 4e 59 3a 42 4e 45 63 6c 72 6c 70 31 |.J.INY:BNEclrlp1| 00000400 3a 49 4e 43 26 37 33 0d 01 54 1b 4c 44 41 26 37 |:INC&73..T.LDA&7| 00000410 33 3a 43 4d 50 23 26 34 30 3a 42 4e 45 63 6c 72 |3:CMP#&40:BNEclr| 00000420 6c 70 0d 01 5e 07 52 54 53 0d 01 68 05 5d 0d 01 |lp..^.RTS..h.]..| 00000430 72 05 ed 0d 01 7c 1c ff 22 53 41 56 45 20 44 65 |r....|.."SAVE De| 00000440 63 4d 2f 43 20 42 30 30 20 22 2b c3 7e 50 25 0d |cM/C B00 "+.~P%.| 00000450 ff |.| 00000451