Home » CEEFAX disks » telesoftware10.adl » 04-11-88/RFSHEAD
04-11-88/RFSHEAD
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 » CEEFAX disks » telesoftware10.adl |
Filename: | 04-11-88/RFSHEAD |
Read OK: | ✔ |
File size: | 0442 bytes |
Load address: | 0800 |
Exec address: | 8023 |
Duplicates
There are 3 duplicate copies of this file in the archive:
- CEEFAX disks » telesoftware10.adl » 04-11-88/RFSHEAD
- CEEFAX disks » telesoftware11.adl » 11-12-88/RFSHEAD
- CEEFAX disks » telesoftware6.adl » 09-04-88/RFSHEAD
- CEEFAX disks » telesoftware5.adl » 26-02-88/RFSHEAD
File contents
10REM: RFSHEAD 20MODE7 30HIMEM=&3C00 40diff=&8000-HIMEM 50H%=HIMEM 60romnumber=&F4 70phrom=&F5 80rompoint=&F6 90FOR pass = 0 TO 2 STEP 2 100P%=HIMEM 110[OPT pass 120BRK 130BRK 140BRK 150JMP service+diff 160OPT FNequb(&82) 170OPT FNequb((copyright+diff) MOD 256) 180BRK 190OPT FNequs("RFS") 200.copyright 210BRK 220OPT FNequs("(C) Gordon Horsington 1986") 230BRK 240.service 250PHA 260CMP #13 270BNE fourteen 280TYA 290EOR #&F 300CMP romnumber 310BCC out 320LDA #(lastbyte+diff) MOD 256 330STA rompoint 340LDA #(lastbyte+diff) DIV 256 350STA rompoint+1 360LDA romnumber 370EOR #&F 380STA phrom 390.exit 400PLA 410LDA #0 420RTS 430.fourteen 440CMP #14 450BNE out 460LDA phrom 470EOR #&F 480CMP romnumber 490BNE out 500LDY #0 510LDA (rompoint),Y 520TAY 530INC rompoint 540BNE exit 550INC rompoint+1 560JMP exit+diff 570.out 580PLA 590RTS 600.lastbyte 610] 620NEXT 630O%=lastbyte 640CHAIN"RFSGEN" 650DEFFNequb(byte) 660?P%=byte 670P%=P%+1 680=pass 690DEFFNequw(word) 700?P%=word MOD 256 710P%?1=word DIV 256 720P%=P%+2 730=pass 740DEFFNequd(double) 750!P%=double 760P%=P%+4 770=pass 780DEFFNequs(string$) 790$P%=string$ 800P%=P%+LEN(string$) 810=pass
�: RFSHEAD �7 �=&3C00 (diff=&8000-� 2H%=� <romnumber=&F4 F phrom=&F5 Prompoint=&F6 Z� pass = 0 � 2 � 2 dP%=� n [OPT pass xBRK �BRK �BRK �JMP service+diff �OPT �equb(&82) �%OPT �equb((copyright+diff) � 256) �BRK �OPT �equs("RFS") �.copyright �BRK �+OPT �equs("(C) Gordon Horsington 1986") �BRK �.service �PHA CMP #13 BNE fourteen TYA " � #&F ,CMP romnumber 6BCC out @LDA #(lastbyte+diff) � 256 JSTA rompoint TLDA #(lastbyte+diff) � 256 ^STA rompoint+1 hLDA romnumber r � #&F | STA phrom � .exit �PLA � LDA #0 �RTS � .fourteen �CMP #14 �BNE out � LDA phrom � � #&F �CMP romnumber �BNE out � LDY #0 �LDA (rompoint),Y TAY INC rompoint BNE exit &INC rompoint+1 0JMP exit+diff :.out DPLA NRTS X .lastbyte b] l� vO%=lastbyte � �"RFSGEN" �ݤequb(byte) �?P%=byte �P%=P%+1 � =pass �ݤequw(word) �?P%=word � 256 �P%?1=word � 256 �P%=P%+2 � =pass �ݤequd(double) �!P%=double �P%=P%+4 =pass ݤequs(string$) $P%=string$ P%=P%+�(string$) * =pass �
00000000 0d 00 0a 0e f4 3a 20 52 46 53 48 45 41 44 0d 00 |.....: RFSHEAD..| 00000010 14 06 eb 37 0d 00 1e 0b d3 3d 26 33 43 30 30 0d |...7.....=&3C00.| 00000020 00 28 10 64 69 66 66 3d 26 38 30 30 30 2d 93 0d |.(.diff=&8000-..| 00000030 00 32 08 48 25 3d 93 0d 00 3c 11 72 6f 6d 6e 75 |.2.H%=...<.romnu| 00000040 6d 62 65 72 3d 26 46 34 0d 00 46 0d 70 68 72 6f |mber=&F4..F.phro| 00000050 6d 3d 26 46 35 0d 00 50 10 72 6f 6d 70 6f 69 6e |m=&F5..P.rompoin| 00000060 74 3d 26 46 36 0d 00 5a 16 e3 20 70 61 73 73 20 |t=&F6..Z.. pass | 00000070 3d 20 30 20 b8 20 32 20 88 20 32 0d 00 64 08 50 |= 0 . 2 . 2..d.P| 00000080 25 3d 93 0d 00 6e 0d 5b 4f 50 54 20 70 61 73 73 |%=...n.[OPT pass| 00000090 0d 00 78 07 42 52 4b 0d 00 82 07 42 52 4b 0d 00 |..x.BRK....BRK..| 000000a0 8c 07 42 52 4b 0d 00 96 14 4a 4d 50 20 73 65 72 |..BRK....JMP ser| 000000b0 76 69 63 65 2b 64 69 66 66 0d 00 a0 12 4f 50 54 |vice+diff....OPT| 000000c0 20 a4 65 71 75 62 28 26 38 32 29 0d 00 aa 25 4f | .equb(&82)...%O| 000000d0 50 54 20 a4 65 71 75 62 28 28 63 6f 70 79 72 69 |PT .equb((copyri| 000000e0 67 68 74 2b 64 69 66 66 29 20 83 20 32 35 36 29 |ght+diff) . 256)| 000000f0 0d 00 b4 07 42 52 4b 0d 00 be 14 4f 50 54 20 a4 |....BRK....OPT .| 00000100 65 71 75 73 28 22 52 46 53 22 29 0d 00 c8 0e 2e |equs("RFS").....| 00000110 63 6f 70 79 72 69 67 68 74 0d 00 d2 07 42 52 4b |copyright....BRK| 00000120 0d 00 dc 2b 4f 50 54 20 a4 65 71 75 73 28 22 28 |...+OPT .equs("(| 00000130 43 29 20 47 6f 72 64 6f 6e 20 48 6f 72 73 69 6e |C) Gordon Horsin| 00000140 67 74 6f 6e 20 31 39 38 36 22 29 0d 00 e6 07 42 |gton 1986")....B| 00000150 52 4b 0d 00 f0 0c 2e 73 65 72 76 69 63 65 0d 00 |RK.....service..| 00000160 fa 07 50 48 41 0d 01 04 0b 43 4d 50 20 23 31 33 |..PHA....CMP #13| 00000170 0d 01 0e 10 42 4e 45 20 66 6f 75 72 74 65 65 6e |....BNE fourteen| 00000180 0d 01 18 07 54 59 41 0d 01 22 09 82 20 23 26 46 |....TYA..".. #&F| 00000190 0d 01 2c 11 43 4d 50 20 72 6f 6d 6e 75 6d 62 65 |..,.CMP romnumbe| 000001a0 72 0d 01 36 0b 42 43 43 20 6f 75 74 0d 01 40 1e |r..6.BCC out..@.| 000001b0 4c 44 41 20 23 28 6c 61 73 74 62 79 74 65 2b 64 |LDA #(lastbyte+d| 000001c0 69 66 66 29 20 83 20 32 35 36 0d 01 4a 10 53 54 |iff) . 256..J.ST| 000001d0 41 20 72 6f 6d 70 6f 69 6e 74 0d 01 54 1e 4c 44 |A rompoint..T.LD| 000001e0 41 20 23 28 6c 61 73 74 62 79 74 65 2b 64 69 66 |A #(lastbyte+dif| 000001f0 66 29 20 81 20 32 35 36 0d 01 5e 12 53 54 41 20 |f) . 256..^.STA | 00000200 72 6f 6d 70 6f 69 6e 74 2b 31 0d 01 68 11 4c 44 |rompoint+1..h.LD| 00000210 41 20 72 6f 6d 6e 75 6d 62 65 72 0d 01 72 09 82 |A romnumber..r..| 00000220 20 23 26 46 0d 01 7c 0d 53 54 41 20 70 68 72 6f | #&F..|.STA phro| 00000230 6d 0d 01 86 09 2e 65 78 69 74 0d 01 90 07 50 4c |m.....exit....PL| 00000240 41 0d 01 9a 0a 4c 44 41 20 23 30 0d 01 a4 07 52 |A....LDA #0....R| 00000250 54 53 0d 01 ae 0d 2e 66 6f 75 72 74 65 65 6e 0d |TS.....fourteen.| 00000260 01 b8 0b 43 4d 50 20 23 31 34 0d 01 c2 0b 42 4e |...CMP #14....BN| 00000270 45 20 6f 75 74 0d 01 cc 0d 4c 44 41 20 70 68 72 |E out....LDA phr| 00000280 6f 6d 0d 01 d6 09 82 20 23 26 46 0d 01 e0 11 43 |om..... #&F....C| 00000290 4d 50 20 72 6f 6d 6e 75 6d 62 65 72 0d 01 ea 0b |MP romnumber....| 000002a0 42 4e 45 20 6f 75 74 0d 01 f4 0a 4c 44 59 20 23 |BNE out....LDY #| 000002b0 30 0d 01 fe 14 4c 44 41 20 28 72 6f 6d 70 6f 69 |0....LDA (rompoi| 000002c0 6e 74 29 2c 59 0d 02 08 07 54 41 59 0d 02 12 10 |nt),Y....TAY....| 000002d0 49 4e 43 20 72 6f 6d 70 6f 69 6e 74 0d 02 1c 0c |INC rompoint....| 000002e0 42 4e 45 20 65 78 69 74 0d 02 26 12 49 4e 43 20 |BNE exit..&.INC | 000002f0 72 6f 6d 70 6f 69 6e 74 2b 31 0d 02 30 11 4a 4d |rompoint+1..0.JM| 00000300 50 20 65 78 69 74 2b 64 69 66 66 0d 02 3a 08 2e |P exit+diff..:..| 00000310 6f 75 74 0d 02 44 07 50 4c 41 0d 02 4e 07 52 54 |out..D.PLA..N.RT| 00000320 53 0d 02 58 0d 2e 6c 61 73 74 62 79 74 65 0d 02 |S..X..lastbyte..| 00000330 62 05 5d 0d 02 6c 05 ed 0d 02 76 0f 4f 25 3d 6c |b.]..l....v.O%=l| 00000340 61 73 74 62 79 74 65 0d 02 80 0d d7 22 52 46 53 |astbyte....."RFS| 00000350 47 45 4e 22 0d 02 8a 10 dd a4 65 71 75 62 28 62 |GEN"......equb(b| 00000360 79 74 65 29 0d 02 94 0c 3f 50 25 3d 62 79 74 65 |yte)....?P%=byte| 00000370 0d 02 9e 0b 50 25 3d 50 25 2b 31 0d 02 a8 09 3d |....P%=P%+1....=| 00000380 70 61 73 73 0d 02 b2 10 dd a4 65 71 75 77 28 77 |pass......equw(w| 00000390 6f 72 64 29 0d 02 bc 12 3f 50 25 3d 77 6f 72 64 |ord)....?P%=word| 000003a0 20 83 20 32 35 36 0d 02 c6 13 50 25 3f 31 3d 77 | . 256....P%?1=w| 000003b0 6f 72 64 20 81 20 32 35 36 0d 02 d0 0b 50 25 3d |ord . 256....P%=| 000003c0 50 25 2b 32 0d 02 da 09 3d 70 61 73 73 0d 02 e4 |P%+2....=pass...| 000003d0 12 dd a4 65 71 75 64 28 64 6f 75 62 6c 65 29 0d |...equd(double).| 000003e0 02 ee 0e 21 50 25 3d 64 6f 75 62 6c 65 0d 02 f8 |...!P%=double...| 000003f0 0b 50 25 3d 50 25 2b 34 0d 03 02 09 3d 70 61 73 |.P%=P%+4....=pas| 00000400 73 0d 03 0c 13 dd a4 65 71 75 73 28 73 74 72 69 |s......equs(stri| 00000410 6e 67 24 29 0d 03 16 0f 24 50 25 3d 73 74 72 69 |ng$)....$P%=stri| 00000420 6e 67 24 0d 03 20 14 50 25 3d 50 25 2b a9 28 73 |ng$.. .P%=P%+.(s| 00000430 74 72 69 6e 67 24 29 0d 03 2a 09 3d 70 61 73 73 |tring$)..*.=pass| 00000440 0d ff |..| 00000442