Home » CEEFAX disks » telesoftware6.adl » 09-04-88/T\SWR23

09-04-88/T\SWR23

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 » telesoftware6.adl
Filename: 09-04-88/T\SWR23
Read OK:
File size: 2DA1 bytes
Load address: 0000
Exec address: FFFFFFFF
Duplicates

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

File contents
Mastering Sideways ROM & RAM - Module 23 - RFS for BASIC programmers
--------------------------------------------------------------------

  The RFS modules of the course have hopefully been useful to both
BASIC and Assembly language programmers. Experienced Assembly language
programmers will be able to combine the different ideas illustrated in
the course modules into one "ideal" RFS service call interpreter. This
might be more difficult for BASIC programmers who simply want to use
the RFS formatting programs without necessarily knowing how to modify
the Assembly language instructions to suit their particular needs.

  This module will be of particular interest to BASIC programmers who
do not understand Assembly language. I will provide an RFS interpreter
which includes most of the relevant ideas in one program and discuss
some simple modifications which can easily be made to customise the
program.

  The program ALLRFS is used with RFSGEN to create an RFS rom image
which incorporates extended help, auto-boot and running a BASIC file
stored in the RFS with a new * command. The rom image created with
this program only needs to be used in one SWR bank or in one eprom. If
more than one ram bank is used to store RFS files then all but one rom
image should be created with RFSHEAD (introduced in module 18). I will
not go over the instructions for using these formatting programs
again. If you do not know how to use the formatting programs go back
to module 18 where detailed instructions were given.

  The RFS will be selected and catalogued when either R+Break or
Ctrl+R+Break is pressed on the BBC B or when Ctrl+R+Break is used on
the BBC Master.

  The rom image created with ALLRFS responds to the *HELP command by
printing:

          Rom Filing System
            RFS

and to *HELP RFS by printing:

          Rom Filing System

          Select RFS with *ROM
          Boot RFS with Ctrl+R+Break
          Enter RFS with *RFS or *FX142,n

  This response to the *HELP command can be modified in lines 1600 to
1790 of ALLRFS. The argument used to request extended help is in line
1660. If, for example, you want to request extended help with
*HELP FILES then modify line 1660 to read:

 1660 OPT FNequs("FILES")

  The extended help message is in lines 1700 to 1780. Each line of
text should be preceded by and followed by a carriage return character
(lines 1700, 1720, 1740, 1760, 1780) and the last character of the
message must be followed by the BRK instruction (line 1790). You can
use up to 255 characters in the extended help message. If, for
example, you want to alter the heading of the extended help from "Rom
Filing System" to "RFS BASIC programs" then change line 1710 to read:

 1710 OPT FNequs("RFS BASIC programs")

  If you do not want any heading to the extended help message then
delete lines 1710 and 1720.

  One BASIC program stored in the RFS can be chained into user memory
with a new * command. ALLRFS uses the command *RFS to chain the
program DEMO. You can alter the string used for the new * command in
line 270 and alter the BASIC command in line 3010. If, for example,
you want to chain a menu program called STARTUP with the new command
*MENU then alter line 270 to read:

  270 OPT FNequs("MENU")

alter line 1770 to read:

 1770 OPT FNequs("Enter RFS with *MENU or *FX142,n")

and alter line 3010 to read:

 3010 OPT FNequs("CHAIN""STARTUP""")

  The program STARTUP must be stored in an active RFS rom image in the
computer but it does not have to be in the rom image created by
ALLRFS. If the rom image created with ALLRFS is stored in an eprom in
socket &0F then the menu program will always run when the computer is
switched on and when Ctrl+Break is pressed.





   10 REM: ALLRFS
   20 MODE7
   30 HIMEM=&3C00
   40 diff=&8000-HIMEM
   50 H%=HIMEM
   60 address=&70
   70 comvec=&F2
   80 romnumber=&F4
   90 phrom=&F5
  100 rompoint=&F6
  110 breakv=&202
  120 gsinit=&FFC2
  130 gsread=&FFC5
  140 osasci=&FFE3
  150 osnewl=&FFE7
  160 osbyte=&FFF4
  170 oscli=&FFF7
  180 FOR pass = 0 TO 2 STEP 2
  190 P%=HIMEM
  200 [       OPT pass
  210         JMP language+diff
  220         JMP service+diff
  230         OPT FNequb(&C2)
  240         OPT FNequb((copyright+diff) MOD 256)
  250         BRK
  260 .title
  270         OPT FNequs("RFS")
  280 .copyright
  290         BRK
  300         OPT FNequs("(C) Gordon Horsington 1987")
  310         BRK
  320 .service
  330         PHA
  340         CMP #4
  350         BNE trythirteen
  360         TXA
  370         PHA
  380         TYA
  390         PHA
  400         LDX #&FF
  410 .comloop
  420         INX
  430         LDA title+diff,X
  440         BEQ found
  450         LDA (comvec),Y
  460         INY
  470         CMP #ASC(".")
  480         BEQ found
  490         AND #&DF
  500         CMP title+diff,X
  510         BEQ comloop
  520         PLA
  530         TAY
  540         PLA
  550         TAX
  560         PLA
  570         RTS
  580 .found
  590         LDA #&8E
  600         LDX romnumber
  610         JMP osbyte    \ Enter this ROM
  620 .trythirteen
  630         CMP #13
  640         BNE fourteen
  650         TYA
  660         EOR #&F
  670         CMP romnumber
  680         BCC out
  690         LDA #(lastbyte+diff) MOD 256
  700         STA rompoint
  710         LDA #(lastbyte+diff) DIV 256
  720         STA rompoint+1
  730         LDA romnumber
  740         EOR #&F
  750         STA phrom
  760 .exit
  770         PLA
  780         LDA #0
  790         RTS
  800 .fourteen
  810         CMP #14
  820         BNE trythree
  830         LDA phrom
  840         EOR #&F
  850         CMP romnumber
  860         BNE out
  870         LDY #0
  880         LDA (rompoint),Y
  890         TAY
  900         INC rompoint
  910         BNE exit
  920         INC rompoint+1
  930         JMP exit+diff
  940 .out
  950         PLA
  960         RTS
  970 .trythree
  980         CMP #3
  990         BNE trynine
 1000         JMP three+diff
 1010 .trynine
 1020         CMP #9
 1030         BNE out
 1040         TXA
 1050         PHA
 1060         TYA
 1070         PHA
 1080         LDA address
 1090         PHA
 1100         LDA address+1
 1110         PHA
 1120         SEC
 1130         JSR gsinit
 1140         LDX #0
 1150         JSR gsread
 1160         BCC tryextended
 1170         LDX #(helptitle+diff) MOD 256
 1180         LDY #(helptitle+diff) DIV 256
 1190         JSR print+diff
 1200 .exithelp
 1210         PLA
 1220         STA address+1
 1230         PLA
 1240         STA address
 1250         PLA
 1260         TAY
 1270         PLA
 1280         TAX
 1290         PLA
 1300         RTS
 1310 .helploop
 1320         INX
 1330         JSR gsread
 1340 .tryextended
 1350         CMP #ASC(".")
 1360         BEQ extension
 1370         AND #&DF
 1380         CMP extended+diff,X
 1390         BEQ helploop
 1400         LDA extended+diff,X
 1410         BPL exithelp
 1420 .extension
 1430         LDX #(exthelp+diff) MOD 256
 1440         LDY #(exthelp+diff) DIV 256
 1450         JSR print+diff
 1460         BEQ exithelp
 1470 .print
 1480         STX address
 1490         STY address+1
 1500         LDY #&FF
 1510 .printloop
 1520         INY
 1530         LDA (address),Y
 1540         BEQ endprint
 1550         BMI printloop
 1560         JSR osasci
 1570         JMP printloop+diff
 1580 .endprint
 1590         RTS
 1600 .helptitle
 1610         OPT FNequb(&0D)
 1620         OPT FNequs("Rom Filing System")
 1630         OPT FNequb(&0D)
 1640         OPT FNequw(&2020)
 1650 .extended
 1660         OPT FNequs("RFS")
 1670         OPT FNequw(&0DFF)
 1680         BRK
 1690 .exthelp
 1700         OPT FNequb(&0D)
 1710         OPT FNequs("Rom Filing System")
 1720         OPT FNequw(&0D0D)
 1730         OPT FNequs("Select RFS with *ROM")
 1740         OPT FNequb(&0D)
 1750         OPT FNequs("Boot RFS with Ctrl+R+Break")
 1760         OPT FNequb(&0D)
 1770         OPT FNequs("Enter RFS with *RFS or *FX142,n")
 1780         OPT FNequb(&0D)
 1790         BRK
 1800 .three
 1810         TXA
 1820         PHA
 1830         TYA
 1840         PHA
 1850         LDA #&7A
 1860         JSR osbyte
 1870         CPX #&33      \ Is it Ctrl+R+Break?
 1880         BEQ rbreak
 1890         PLA
 1900         TAY
 1910         PLA
 1920         TAX
 1930         PLA
 1940         RTS
 1950 .rbreak
 1960         LDA #&C9
 1970         LDX #1
 1980         LDY #0
 1990         JSR osbyte    \ Disable keyboard
 2000         LDA #&0F
 2010         LDX #0
 2020         JSR osbyte    \ Flush all buffers
 2030         LDA address
 2040         PHA
 2050         LDA address+1
 2060         PHA
 2070         LDX #(rfs+diff) MOD 256
 2080         LDY #(rfs+diff) DIV 256
 2090         JSR print+diff
 2100         LDX #(cat+diff) MOD 256
 2110         LDY #(cat+diff) DIV 256
 2120         JSR print+diff
 2130         LDA #&8D
 2140         JSR osbyte    \ Select RFS
 2150         LDA #&8B
 2160         LDX #1
 2170         LDY #2
 2180         JSR osbyte    \ *OPT1,2
 2190         LDX #(dot+diff) MOD 256
 2200         LDY #(dot+diff) DIV 256
 2210         JSR oscli     \ Catalogue RFS
 2220         LDA #&8B
 2230         LDX #0
 2240         LDY #0
 2250         JSR osbyte    \ *OPT 1,0
 2260         JSR osnewl
 2270         LDX #(rfs+diff) MOD 256
 2280         LDY #(rfs+diff) DIV 256
 2290         JSR print+diff
 2300         LDX #(act+diff) MOD 256
 2310         LDY #(act+diff) DIV 256
 2320         JSR print+diff
 2330         PLA
 2340         STA address+1
 2350         PLA
 2360         STA address
 2370         LDA #&C9
 2380         LDX #0
 2390         LDY #0
 2400         JSR osbyte    \ Enable keyboard
 2410         PLA
 2420         PLA
 2430         PLA
 2440         LDA #0
 2450         RTS
 2460 .dot
 2470         OPT FNequs("CAT")
 2480         OPT FNequb(&0D)
 2490 .rfs
 2500         OPT FNequs("Rom Filing System ")
 2510         BRK
 2520 .cat
 2530         OPT FNequs("Catalogue")
 2540         OPT FNequb(&0D)
 2550         BRK
 2560 .act
 2570         OPT FNequs("active")
 2580         OPT FNequw(&0D0D)
 2590         BRK
 2600 .language
 2610         CLI           \ Enable interupt requests
 2620         LDX #&FF
 2630         TXS           \ Reset stack
 2640         LDA #(basic+diff) MOD 256
 2650         STA breakv
 2660         LDA #(basic+diff) DIV 256
 2670         STA breakv+1
 2680         LDA #&8D
 2690         JSR osbyte    \ *ROM
 2700         LDA #&8B
 2710         LDX #1
 2720         LDY #0
 2730         JSR osbyte    \ *OPT1,0
 2740         LDA #&0F
 2750         LDX #0
 2760         JSR osbyte    \ Flush all buffers
 2770         LDA #&FF
 2780         PHA
 2790 .keyboard
 2800         PLA
 2810         TAX
 2820         INX
 2830         TXA
 2840         PHA
 2850         LDY rfscomm+diff,X
 2860         BEQ endkey
 2870         LDA #&8A
 2880         LDX #0
 2890         JSR osbyte
 2900         JMP keyboard+diff
 2910 .endkey
 2920         PLA
 2930 .basic
 2940         LDA #&BB
 2950         LDX #0
 2960         LDY #&FF
 2970         JSR osbyte    \ Find BASIC
 2980         LDA #&8E
 2990         JMP osbyte    \ Enter BASIC
 3000 .rfscomm
 3010         OPT FNequs("CHAIN""DEMO""")
 3020         OPT FNequb(&0D)
 3030         BRK
 3040 .lastbyte
 3050 ]
 3060 NEXT
 3070 O%=lastbyte
 3080 CHAIN"RFSGEN"
 3090 DEFFNequb(byte)
 3100 ?P%=byte
 3110 P%=P%+1
 3120 =pass
 3130 DEFFNequw(word)
 3140 ?P%=word MOD 256
 3150 P%?1=word DIV 256
 3160 P%=P%+2
 3170 =pass
 3180 DEFFNequd(double)
 3190 !P%=double
 3200 P%=P%+4
 3210 =pass
 3220 DEFFNequs(string$)
 3230 $P%=string$
 3240 P%=P%+LEN(string$)
 3250 =pass
00000000  4d 61 73 74 65 72 69 6e  67 20 53 69 64 65 77 61  |Mastering Sidewa|
00000010  79 73 20 52 4f 4d 20 26  20 52 41 4d 20 2d 20 4d  |ys ROM & RAM - M|
00000020  6f 64 75 6c 65 20 32 33  20 2d 20 52 46 53 20 66  |odule 23 - RFS f|
00000030  6f 72 20 42 41 53 49 43  20 70 72 6f 67 72 61 6d  |or BASIC program|
00000040  6d 65 72 73 0d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |mers.-----------|
00000050  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00000080  2d 2d 2d 2d 2d 2d 2d 2d  2d 0d 0d 20 20 54 68 65  |---------..  The|
00000090  20 52 46 53 20 6d 6f 64  75 6c 65 73 20 6f 66 20  | RFS modules of |
000000a0  74 68 65 20 63 6f 75 72  73 65 20 68 61 76 65 20  |the course have |
000000b0  68 6f 70 65 66 75 6c 6c  79 20 62 65 65 6e 20 75  |hopefully been u|
000000c0  73 65 66 75 6c 20 74 6f  20 62 6f 74 68 0d 42 41  |seful to both.BA|
000000d0  53 49 43 20 61 6e 64 20  41 73 73 65 6d 62 6c 79  |SIC and Assembly|
000000e0  20 6c 61 6e 67 75 61 67  65 20 70 72 6f 67 72 61  | language progra|
000000f0  6d 6d 65 72 73 2e 20 45  78 70 65 72 69 65 6e 63  |mmers. Experienc|
00000100  65 64 20 41 73 73 65 6d  62 6c 79 20 6c 61 6e 67  |ed Assembly lang|
00000110  75 61 67 65 0d 70 72 6f  67 72 61 6d 6d 65 72 73  |uage.programmers|
00000120  20 77 69 6c 6c 20 62 65  20 61 62 6c 65 20 74 6f  | will be able to|
00000130  20 63 6f 6d 62 69 6e 65  20 74 68 65 20 64 69 66  | combine the dif|
00000140  66 65 72 65 6e 74 20 69  64 65 61 73 20 69 6c 6c  |ferent ideas ill|
00000150  75 73 74 72 61 74 65 64  20 69 6e 0d 74 68 65 20  |ustrated in.the |
00000160  63 6f 75 72 73 65 20 6d  6f 64 75 6c 65 73 20 69  |course modules i|
00000170  6e 74 6f 20 6f 6e 65 20  22 69 64 65 61 6c 22 20  |nto one "ideal" |
00000180  52 46 53 20 73 65 72 76  69 63 65 20 63 61 6c 6c  |RFS service call|
00000190  20 69 6e 74 65 72 70 72  65 74 65 72 2e 20 54 68  | interpreter. Th|
000001a0  69 73 0d 6d 69 67 68 74  20 62 65 20 6d 6f 72 65  |is.might be more|
000001b0  20 64 69 66 66 69 63 75  6c 74 20 66 6f 72 20 42  | difficult for B|
000001c0  41 53 49 43 20 70 72 6f  67 72 61 6d 6d 65 72 73  |ASIC programmers|
000001d0  20 77 68 6f 20 73 69 6d  70 6c 79 20 77 61 6e 74  | who simply want|
000001e0  20 74 6f 20 75 73 65 0d  74 68 65 20 52 46 53 20  | to use.the RFS |
000001f0  66 6f 72 6d 61 74 74 69  6e 67 20 70 72 6f 67 72  |formatting progr|
00000200  61 6d 73 20 77 69 74 68  6f 75 74 20 6e 65 63 65  |ams without nece|
00000210  73 73 61 72 69 6c 79 20  6b 6e 6f 77 69 6e 67 20  |ssarily knowing |
00000220  68 6f 77 20 74 6f 20 6d  6f 64 69 66 79 0d 74 68  |how to modify.th|
00000230  65 20 41 73 73 65 6d 62  6c 79 20 6c 61 6e 67 75  |e Assembly langu|
00000240  61 67 65 20 69 6e 73 74  72 75 63 74 69 6f 6e 73  |age instructions|
00000250  20 74 6f 20 73 75 69 74  20 74 68 65 69 72 20 70  | to suit their p|
00000260  61 72 74 69 63 75 6c 61  72 20 6e 65 65 64 73 2e  |articular needs.|
00000270  0d 0d 20 20 54 68 69 73  20 6d 6f 64 75 6c 65 20  |..  This module |
00000280  77 69 6c 6c 20 62 65 20  6f 66 20 70 61 72 74 69  |will be of parti|
00000290  63 75 6c 61 72 20 69 6e  74 65 72 65 73 74 20 74  |cular interest t|
000002a0  6f 20 42 41 53 49 43 20  70 72 6f 67 72 61 6d 6d  |o BASIC programm|
000002b0  65 72 73 20 77 68 6f 0d  64 6f 20 6e 6f 74 20 75  |ers who.do not u|
000002c0  6e 64 65 72 73 74 61 6e  64 20 41 73 73 65 6d 62  |nderstand Assemb|
000002d0  6c 79 20 6c 61 6e 67 75  61 67 65 2e 20 49 20 77  |ly language. I w|
000002e0  69 6c 6c 20 70 72 6f 76  69 64 65 20 61 6e 20 52  |ill provide an R|
000002f0  46 53 20 69 6e 74 65 72  70 72 65 74 65 72 0d 77  |FS interpreter.w|
00000300  68 69 63 68 20 69 6e 63  6c 75 64 65 73 20 6d 6f  |hich includes mo|
00000310  73 74 20 6f 66 20 74 68  65 20 72 65 6c 65 76 61  |st of the releva|
00000320  6e 74 20 69 64 65 61 73  20 69 6e 20 6f 6e 65 20  |nt ideas in one |
00000330  70 72 6f 67 72 61 6d 20  61 6e 64 20 64 69 73 63  |program and disc|
00000340  75 73 73 0d 73 6f 6d 65  20 73 69 6d 70 6c 65 20  |uss.some simple |
00000350  6d 6f 64 69 66 69 63 61  74 69 6f 6e 73 20 77 68  |modifications wh|
00000360  69 63 68 20 63 61 6e 20  65 61 73 69 6c 79 20 62  |ich can easily b|
00000370  65 20 6d 61 64 65 20 74  6f 20 63 75 73 74 6f 6d  |e made to custom|
00000380  69 73 65 20 74 68 65 0d  70 72 6f 67 72 61 6d 2e  |ise the.program.|
00000390  0d 0d 20 20 54 68 65 20  70 72 6f 67 72 61 6d 20  |..  The program |
000003a0  41 4c 4c 52 46 53 20 69  73 20 75 73 65 64 20 77  |ALLRFS is used w|
000003b0  69 74 68 20 52 46 53 47  45 4e 20 74 6f 20 63 72  |ith RFSGEN to cr|
000003c0  65 61 74 65 20 61 6e 20  52 46 53 20 72 6f 6d 20  |eate an RFS rom |
000003d0  69 6d 61 67 65 0d 77 68  69 63 68 20 69 6e 63 6f  |image.which inco|
000003e0  72 70 6f 72 61 74 65 73  20 65 78 74 65 6e 64 65  |rporates extende|
000003f0  64 20 68 65 6c 70 2c 20  61 75 74 6f 2d 62 6f 6f  |d help, auto-boo|
00000400  74 20 61 6e 64 20 72 75  6e 6e 69 6e 67 20 61 20  |t and running a |
00000410  42 41 53 49 43 20 66 69  6c 65 0d 73 74 6f 72 65  |BASIC file.store|
00000420  64 20 69 6e 20 74 68 65  20 52 46 53 20 77 69 74  |d in the RFS wit|
00000430  68 20 61 20 6e 65 77 20  2a 20 63 6f 6d 6d 61 6e  |h a new * comman|
00000440  64 2e 20 54 68 65 20 72  6f 6d 20 69 6d 61 67 65  |d. The rom image|
00000450  20 63 72 65 61 74 65 64  20 77 69 74 68 0d 74 68  | created with.th|
00000460  69 73 20 70 72 6f 67 72  61 6d 20 6f 6e 6c 79 20  |is program only |
00000470  6e 65 65 64 73 20 74 6f  20 62 65 20 75 73 65 64  |needs to be used|
00000480  20 69 6e 20 6f 6e 65 20  53 57 52 20 62 61 6e 6b  | in one SWR bank|
00000490  20 6f 72 20 69 6e 20 6f  6e 65 20 65 70 72 6f 6d  | or in one eprom|
000004a0  2e 20 49 66 0d 6d 6f 72  65 20 74 68 61 6e 20 6f  |. If.more than o|
000004b0  6e 65 20 72 61 6d 20 62  61 6e 6b 20 69 73 20 75  |ne ram bank is u|
000004c0  73 65 64 20 74 6f 20 73  74 6f 72 65 20 52 46 53  |sed to store RFS|
000004d0  20 66 69 6c 65 73 20 74  68 65 6e 20 61 6c 6c 20  | files then all |
000004e0  62 75 74 20 6f 6e 65 20  72 6f 6d 0d 69 6d 61 67  |but one rom.imag|
000004f0  65 20 73 68 6f 75 6c 64  20 62 65 20 63 72 65 61  |e should be crea|
00000500  74 65 64 20 77 69 74 68  20 52 46 53 48 45 41 44  |ted with RFSHEAD|
00000510  20 28 69 6e 74 72 6f 64  75 63 65 64 20 69 6e 20  | (introduced in |
00000520  6d 6f 64 75 6c 65 20 31  38 29 2e 20 49 20 77 69  |module 18). I wi|
00000530  6c 6c 0d 6e 6f 74 20 67  6f 20 6f 76 65 72 20 74  |ll.not go over t|
00000540  68 65 20 69 6e 73 74 72  75 63 74 69 6f 6e 73 20  |he instructions |
00000550  66 6f 72 20 75 73 69 6e  67 20 74 68 65 73 65 20  |for using these |
00000560  66 6f 72 6d 61 74 74 69  6e 67 20 70 72 6f 67 72  |formatting progr|
00000570  61 6d 73 0d 61 67 61 69  6e 2e 20 49 66 20 79 6f  |ams.again. If yo|
00000580  75 20 64 6f 20 6e 6f 74  20 6b 6e 6f 77 20 68 6f  |u do not know ho|
00000590  77 20 74 6f 20 75 73 65  20 74 68 65 20 66 6f 72  |w to use the for|
000005a0  6d 61 74 74 69 6e 67 20  70 72 6f 67 72 61 6d 73  |matting programs|
000005b0  20 67 6f 20 62 61 63 6b  0d 74 6f 20 6d 6f 64 75  | go back.to modu|
000005c0  6c 65 20 31 38 20 77 68  65 72 65 20 64 65 74 61  |le 18 where deta|
000005d0  69 6c 65 64 20 69 6e 73  74 72 75 63 74 69 6f 6e  |iled instruction|
000005e0  73 20 77 65 72 65 20 67  69 76 65 6e 2e 0d 0d 20  |s were given... |
000005f0  20 54 68 65 20 52 46 53  20 77 69 6c 6c 20 62 65  | The RFS will be|
00000600  20 73 65 6c 65 63 74 65  64 20 61 6e 64 20 63 61  | selected and ca|
00000610  74 61 6c 6f 67 75 65 64  20 77 68 65 6e 20 65 69  |talogued when ei|
00000620  74 68 65 72 20 52 2b 42  72 65 61 6b 20 6f 72 0d  |ther R+Break or.|
00000630  43 74 72 6c 2b 52 2b 42  72 65 61 6b 20 69 73 20  |Ctrl+R+Break is |
00000640  70 72 65 73 73 65 64 20  6f 6e 20 74 68 65 20 42  |pressed on the B|
00000650  42 43 20 42 20 6f 72 20  77 68 65 6e 20 43 74 72  |BC B or when Ctr|
00000660  6c 2b 52 2b 42 72 65 61  6b 20 69 73 20 75 73 65  |l+R+Break is use|
00000670  64 20 6f 6e 0d 74 68 65  20 42 42 43 20 4d 61 73  |d on.the BBC Mas|
00000680  74 65 72 2e 0d 0d 20 20  54 68 65 20 72 6f 6d 20  |ter...  The rom |
00000690  69 6d 61 67 65 20 63 72  65 61 74 65 64 20 77 69  |image created wi|
000006a0  74 68 20 41 4c 4c 52 46  53 20 72 65 73 70 6f 6e  |th ALLRFS respon|
000006b0  64 73 20 74 6f 20 74 68  65 20 2a 48 45 4c 50 20  |ds to the *HELP |
000006c0  63 6f 6d 6d 61 6e 64 20  62 79 0d 70 72 69 6e 74  |command by.print|
000006d0  69 6e 67 3a 0d 0d 20 20  20 20 20 20 20 20 20 20  |ing:..          |
000006e0  52 6f 6d 20 46 69 6c 69  6e 67 20 53 79 73 74 65  |Rom Filing Syste|
000006f0  6d 0d 20 20 20 20 20 20  20 20 20 20 20 20 52 46  |m.            RF|
00000700  53 0d 0d 61 6e 64 20 74  6f 20 2a 48 45 4c 50 20  |S..and to *HELP |
00000710  52 46 53 20 62 79 20 70  72 69 6e 74 69 6e 67 3a  |RFS by printing:|
00000720  0d 0d 20 20 20 20 20 20  20 20 20 20 52 6f 6d 20  |..          Rom |
00000730  46 69 6c 69 6e 67 20 53  79 73 74 65 6d 0d 0d 20  |Filing System.. |
00000740  20 20 20 20 20 20 20 20  20 53 65 6c 65 63 74 20  |         Select |
00000750  52 46 53 20 77 69 74 68  20 2a 52 4f 4d 0d 20 20  |RFS with *ROM.  |
00000760  20 20 20 20 20 20 20 20  42 6f 6f 74 20 52 46 53  |        Boot RFS|
00000770  20 77 69 74 68 20 43 74  72 6c 2b 52 2b 42 72 65  | with Ctrl+R+Bre|
00000780  61 6b 0d 20 20 20 20 20  20 20 20 20 20 45 6e 74  |ak.          Ent|
00000790  65 72 20 52 46 53 20 77  69 74 68 20 2a 52 46 53  |er RFS with *RFS|
000007a0  20 6f 72 20 2a 46 58 31  34 32 2c 6e 0d 0d 20 20  | or *FX142,n..  |
000007b0  54 68 69 73 20 72 65 73  70 6f 6e 73 65 20 74 6f  |This response to|
000007c0  20 74 68 65 20 2a 48 45  4c 50 20 63 6f 6d 6d 61  | the *HELP comma|
000007d0  6e 64 20 63 61 6e 20 62  65 20 6d 6f 64 69 66 69  |nd can be modifi|
000007e0  65 64 20 69 6e 20 6c 69  6e 65 73 20 31 36 30 30  |ed in lines 1600|
000007f0  20 74 6f 0d 31 37 39 30  20 6f 66 20 41 4c 4c 52  | to.1790 of ALLR|
00000800  46 53 2e 20 54 68 65 20  61 72 67 75 6d 65 6e 74  |FS. The argument|
00000810  20 75 73 65 64 20 74 6f  20 72 65 71 75 65 73 74  | used to request|
00000820  20 65 78 74 65 6e 64 65  64 20 68 65 6c 70 20 69  | extended help i|
00000830  73 20 69 6e 20 6c 69 6e  65 0d 31 36 36 30 2e 20  |s in line.1660. |
00000840  49 66 2c 20 66 6f 72 20  65 78 61 6d 70 6c 65 2c  |If, for example,|
00000850  20 79 6f 75 20 77 61 6e  74 20 74 6f 20 72 65 71  | you want to req|
00000860  75 65 73 74 20 65 78 74  65 6e 64 65 64 20 68 65  |uest extended he|
00000870  6c 70 20 77 69 74 68 0d  2a 48 45 4c 50 20 46 49  |lp with.*HELP FI|
00000880  4c 45 53 20 74 68 65 6e  20 6d 6f 64 69 66 79 20  |LES then modify |
00000890  6c 69 6e 65 20 31 36 36  30 20 74 6f 20 72 65 61  |line 1660 to rea|
000008a0  64 3a 0d 0d 20 31 36 36  30 20 4f 50 54 20 46 4e  |d:.. 1660 OPT FN|
000008b0  65 71 75 73 28 22 46 49  4c 45 53 22 29 0d 0d 20  |equs("FILES").. |
000008c0  20 54 68 65 20 65 78 74  65 6e 64 65 64 20 68 65  | The extended he|
000008d0  6c 70 20 6d 65 73 73 61  67 65 20 69 73 20 69 6e  |lp message is in|
000008e0  20 6c 69 6e 65 73 20 31  37 30 30 20 74 6f 20 31  | lines 1700 to 1|
000008f0  37 38 30 2e 20 45 61 63  68 20 6c 69 6e 65 20 6f  |780. Each line o|
00000900  66 0d 74 65 78 74 20 73  68 6f 75 6c 64 20 62 65  |f.text should be|
00000910  20 70 72 65 63 65 64 65  64 20 62 79 20 61 6e 64  | preceded by and|
00000920  20 66 6f 6c 6c 6f 77 65  64 20 62 79 20 61 20 63  | followed by a c|
00000930  61 72 72 69 61 67 65 20  72 65 74 75 72 6e 20 63  |arriage return c|
00000940  68 61 72 61 63 74 65 72  0d 28 6c 69 6e 65 73 20  |haracter.(lines |
00000950  31 37 30 30 2c 20 31 37  32 30 2c 20 31 37 34 30  |1700, 1720, 1740|
00000960  2c 20 31 37 36 30 2c 20  31 37 38 30 29 20 61 6e  |, 1760, 1780) an|
00000970  64 20 74 68 65 20 6c 61  73 74 20 63 68 61 72 61  |d the last chara|
00000980  63 74 65 72 20 6f 66 20  74 68 65 0d 6d 65 73 73  |cter of the.mess|
00000990  61 67 65 20 6d 75 73 74  20 62 65 20 66 6f 6c 6c  |age must be foll|
000009a0  6f 77 65 64 20 62 79 20  74 68 65 20 42 52 4b 20  |owed by the BRK |
000009b0  69 6e 73 74 72 75 63 74  69 6f 6e 20 28 6c 69 6e  |instruction (lin|
000009c0  65 20 31 37 39 30 29 2e  20 59 6f 75 20 63 61 6e  |e 1790). You can|
000009d0  0d 75 73 65 20 75 70 20  74 6f 20 32 35 35 20 63  |.use up to 255 c|
000009e0  68 61 72 61 63 74 65 72  73 20 69 6e 20 74 68 65  |haracters in the|
000009f0  20 65 78 74 65 6e 64 65  64 20 68 65 6c 70 20 6d  | extended help m|
00000a00  65 73 73 61 67 65 2e 20  49 66 2c 20 66 6f 72 0d  |essage. If, for.|
00000a10  65 78 61 6d 70 6c 65 2c  20 79 6f 75 20 77 61 6e  |example, you wan|
00000a20  74 20 74 6f 20 61 6c 74  65 72 20 74 68 65 20 68  |t to alter the h|
00000a30  65 61 64 69 6e 67 20 6f  66 20 74 68 65 20 65 78  |eading of the ex|
00000a40  74 65 6e 64 65 64 20 68  65 6c 70 20 66 72 6f 6d  |tended help from|
00000a50  20 22 52 6f 6d 0d 46 69  6c 69 6e 67 20 53 79 73  | "Rom.Filing Sys|
00000a60  74 65 6d 22 20 74 6f 20  22 52 46 53 20 42 41 53  |tem" to "RFS BAS|
00000a70  49 43 20 70 72 6f 67 72  61 6d 73 22 20 74 68 65  |IC programs" the|
00000a80  6e 20 63 68 61 6e 67 65  20 6c 69 6e 65 20 31 37  |n change line 17|
00000a90  31 30 20 74 6f 20 72 65  61 64 3a 0d 0d 20 31 37  |10 to read:.. 17|
00000aa0  31 30 20 4f 50 54 20 46  4e 65 71 75 73 28 22 52  |10 OPT FNequs("R|
00000ab0  46 53 20 42 41 53 49 43  20 70 72 6f 67 72 61 6d  |FS BASIC program|
00000ac0  73 22 29 0d 0d 20 20 49  66 20 79 6f 75 20 64 6f  |s")..  If you do|
00000ad0  20 6e 6f 74 20 77 61 6e  74 20 61 6e 79 20 68 65  | not want any he|
00000ae0  61 64 69 6e 67 20 74 6f  20 74 68 65 20 65 78 74  |ading to the ext|
00000af0  65 6e 64 65 64 20 68 65  6c 70 20 6d 65 73 73 61  |ended help messa|
00000b00  67 65 20 74 68 65 6e 0d  64 65 6c 65 74 65 20 6c  |ge then.delete l|
00000b10  69 6e 65 73 20 31 37 31  30 20 61 6e 64 20 31 37  |ines 1710 and 17|
00000b20  32 30 2e 0d 0d 20 20 4f  6e 65 20 42 41 53 49 43  |20...  One BASIC|
00000b30  20 70 72 6f 67 72 61 6d  20 73 74 6f 72 65 64 20  | program stored |
00000b40  69 6e 20 74 68 65 20 52  46 53 20 63 61 6e 20 62  |in the RFS can b|
00000b50  65 20 63 68 61 69 6e 65  64 20 69 6e 74 6f 20 75  |e chained into u|
00000b60  73 65 72 20 6d 65 6d 6f  72 79 0d 77 69 74 68 20  |ser memory.with |
00000b70  61 20 6e 65 77 20 2a 20  63 6f 6d 6d 61 6e 64 2e  |a new * command.|
00000b80  20 41 4c 4c 52 46 53 20  75 73 65 73 20 74 68 65  | ALLRFS uses the|
00000b90  20 63 6f 6d 6d 61 6e 64  20 2a 52 46 53 20 74 6f  | command *RFS to|
00000ba0  20 63 68 61 69 6e 20 74  68 65 0d 70 72 6f 67 72  | chain the.progr|
00000bb0  61 6d 20 44 45 4d 4f 2e  20 59 6f 75 20 63 61 6e  |am DEMO. You can|
00000bc0  20 61 6c 74 65 72 20 74  68 65 20 73 74 72 69 6e  | alter the strin|
00000bd0  67 20 75 73 65 64 20 66  6f 72 20 74 68 65 20 6e  |g used for the n|
00000be0  65 77 20 2a 20 63 6f 6d  6d 61 6e 64 20 69 6e 0d  |ew * command in.|
00000bf0  6c 69 6e 65 20 32 37 30  20 61 6e 64 20 61 6c 74  |line 270 and alt|
00000c00  65 72 20 74 68 65 20 42  41 53 49 43 20 63 6f 6d  |er the BASIC com|
00000c10  6d 61 6e 64 20 69 6e 20  6c 69 6e 65 20 33 30 31  |mand in line 301|
00000c20  30 2e 20 49 66 2c 20 66  6f 72 20 65 78 61 6d 70  |0. If, for examp|
00000c30  6c 65 2c 0d 79 6f 75 20  77 61 6e 74 20 74 6f 20  |le,.you want to |
00000c40  63 68 61 69 6e 20 61 20  6d 65 6e 75 20 70 72 6f  |chain a menu pro|
00000c50  67 72 61 6d 20 63 61 6c  6c 65 64 20 53 54 41 52  |gram called STAR|
00000c60  54 55 50 20 77 69 74 68  20 74 68 65 20 6e 65 77  |TUP with the new|
00000c70  20 63 6f 6d 6d 61 6e 64  0d 2a 4d 45 4e 55 20 74  | command.*MENU t|
00000c80  68 65 6e 20 61 6c 74 65  72 20 6c 69 6e 65 20 32  |hen alter line 2|
00000c90  37 30 20 74 6f 20 72 65  61 64 3a 0d 0d 20 20 32  |70 to read:..  2|
00000ca0  37 30 20 4f 50 54 20 46  4e 65 71 75 73 28 22 4d  |70 OPT FNequs("M|
00000cb0  45 4e 55 22 29 0d 0d 61  6c 74 65 72 20 6c 69 6e  |ENU")..alter lin|
00000cc0  65 20 31 37 37 30 20 74  6f 20 72 65 61 64 3a 0d  |e 1770 to read:.|
00000cd0  0d 20 31 37 37 30 20 4f  50 54 20 46 4e 65 71 75  |. 1770 OPT FNequ|
00000ce0  73 28 22 45 6e 74 65 72  20 52 46 53 20 77 69 74  |s("Enter RFS wit|
00000cf0  68 20 2a 4d 45 4e 55 20  6f 72 20 2a 46 58 31 34  |h *MENU or *FX14|
00000d00  32 2c 6e 22 29 0d 0d 61  6e 64 20 61 6c 74 65 72  |2,n")..and alter|
00000d10  20 6c 69 6e 65 20 33 30  31 30 20 74 6f 20 72 65  | line 3010 to re|
00000d20  61 64 3a 0d 0d 20 33 30  31 30 20 4f 50 54 20 46  |ad:.. 3010 OPT F|
00000d30  4e 65 71 75 73 28 22 43  48 41 49 4e 22 22 53 54  |Nequs("CHAIN""ST|
00000d40  41 52 54 55 50 22 22 22  29 0d 0d 20 20 54 68 65  |ARTUP""")..  The|
00000d50  20 70 72 6f 67 72 61 6d  20 53 54 41 52 54 55 50  | program STARTUP|
00000d60  20 6d 75 73 74 20 62 65  20 73 74 6f 72 65 64 20  | must be stored |
00000d70  69 6e 20 61 6e 20 61 63  74 69 76 65 20 52 46 53  |in an active RFS|
00000d80  20 72 6f 6d 20 69 6d 61  67 65 20 69 6e 20 74 68  | rom image in th|
00000d90  65 0d 63 6f 6d 70 75 74  65 72 20 62 75 74 20 69  |e.computer but i|
00000da0  74 20 64 6f 65 73 20 6e  6f 74 20 68 61 76 65 20  |t does not have |
00000db0  74 6f 20 62 65 20 69 6e  20 74 68 65 20 72 6f 6d  |to be in the rom|
00000dc0  20 69 6d 61 67 65 20 63  72 65 61 74 65 64 20 62  | image created b|
00000dd0  79 0d 41 4c 4c 52 46 53  2e 20 49 66 20 74 68 65  |y.ALLRFS. If the|
00000de0  20 72 6f 6d 20 69 6d 61  67 65 20 63 72 65 61 74  | rom image creat|
00000df0  65 64 20 77 69 74 68 20  41 4c 4c 52 46 53 20 69  |ed with ALLRFS i|
00000e00  73 20 73 74 6f 72 65 64  20 69 6e 20 61 6e 20 65  |s stored in an e|
00000e10  70 72 6f 6d 20 69 6e 0d  73 6f 63 6b 65 74 20 26  |prom in.socket &|
00000e20  30 46 20 74 68 65 6e 20  74 68 65 20 6d 65 6e 75  |0F then the menu|
00000e30  20 70 72 6f 67 72 61 6d  20 77 69 6c 6c 20 61 6c  | program will al|
00000e40  77 61 79 73 20 72 75 6e  20 77 68 65 6e 20 74 68  |ways run when th|
00000e50  65 20 63 6f 6d 70 75 74  65 72 20 69 73 0d 73 77  |e computer is.sw|
00000e60  69 74 63 68 65 64 20 6f  6e 20 61 6e 64 20 77 68  |itched on and wh|
00000e70  65 6e 20 43 74 72 6c 2b  42 72 65 61 6b 20 69 73  |en Ctrl+Break is|
00000e80  20 70 72 65 73 73 65 64  2e 0d 0d 0d 0d 0d 0d 20  | pressed....... |
00000e90  20 20 31 30 20 52 45 4d  3a 20 41 4c 4c 52 46 53  |  10 REM: ALLRFS|
00000ea0  0d 20 20 20 32 30 20 4d  4f 44 45 37 0d 20 20 20  |.   20 MODE7.   |
00000eb0  33 30 20 48 49 4d 45 4d  3d 26 33 43 30 30 0d 20  |30 HIMEM=&3C00. |
00000ec0  20 20 34 30 20 64 69 66  66 3d 26 38 30 30 30 2d  |  40 diff=&8000-|
00000ed0  48 49 4d 45 4d 0d 20 20  20 35 30 20 48 25 3d 48  |HIMEM.   50 H%=H|
00000ee0  49 4d 45 4d 0d 20 20 20  36 30 20 61 64 64 72 65  |IMEM.   60 addre|
00000ef0  73 73 3d 26 37 30 0d 20  20 20 37 30 20 63 6f 6d  |ss=&70.   70 com|
00000f00  76 65 63 3d 26 46 32 0d  20 20 20 38 30 20 72 6f  |vec=&F2.   80 ro|
00000f10  6d 6e 75 6d 62 65 72 3d  26 46 34 0d 20 20 20 39  |mnumber=&F4.   9|
00000f20  30 20 70 68 72 6f 6d 3d  26 46 35 0d 20 20 31 30  |0 phrom=&F5.  10|
00000f30  30 20 72 6f 6d 70 6f 69  6e 74 3d 26 46 36 0d 20  |0 rompoint=&F6. |
00000f40  20 31 31 30 20 62 72 65  61 6b 76 3d 26 32 30 32  | 110 breakv=&202|
00000f50  0d 20 20 31 32 30 20 67  73 69 6e 69 74 3d 26 46  |.  120 gsinit=&F|
00000f60  46 43 32 0d 20 20 31 33  30 20 67 73 72 65 61 64  |FC2.  130 gsread|
00000f70  3d 26 46 46 43 35 0d 20  20 31 34 30 20 6f 73 61  |=&FFC5.  140 osa|
00000f80  73 63 69 3d 26 46 46 45  33 0d 20 20 31 35 30 20  |sci=&FFE3.  150 |
00000f90  6f 73 6e 65 77 6c 3d 26  46 46 45 37 0d 20 20 31  |osnewl=&FFE7.  1|
00000fa0  36 30 20 6f 73 62 79 74  65 3d 26 46 46 46 34 0d  |60 osbyte=&FFF4.|
00000fb0  20 20 31 37 30 20 6f 73  63 6c 69 3d 26 46 46 46  |  170 oscli=&FFF|
00000fc0  37 0d 20 20 31 38 30 20  46 4f 52 20 70 61 73 73  |7.  180 FOR pass|
00000fd0  20 3d 20 30 20 54 4f 20  32 20 53 54 45 50 20 32  | = 0 TO 2 STEP 2|
00000fe0  0d 20 20 31 39 30 20 50  25 3d 48 49 4d 45 4d 0d  |.  190 P%=HIMEM.|
00000ff0  20 20 32 30 30 20 5b 20  20 20 20 20 20 20 4f 50  |  200 [       OP|
00001000  54 20 70 61 73 73 0d 20  20 32 31 30 20 20 20 20  |T pass.  210    |
00001010  20 20 20 20 20 4a 4d 50  20 6c 61 6e 67 75 61 67  |     JMP languag|
00001020  65 2b 64 69 66 66 0d 20  20 32 32 30 20 20 20 20  |e+diff.  220    |
00001030  20 20 20 20 20 4a 4d 50  20 73 65 72 76 69 63 65  |     JMP service|
00001040  2b 64 69 66 66 0d 20 20  32 33 30 20 20 20 20 20  |+diff.  230     |
00001050  20 20 20 20 4f 50 54 20  46 4e 65 71 75 62 28 26  |    OPT FNequb(&|
00001060  43 32 29 0d 20 20 32 34  30 20 20 20 20 20 20 20  |C2).  240       |
00001070  20 20 4f 50 54 20 46 4e  65 71 75 62 28 28 63 6f  |  OPT FNequb((co|
00001080  70 79 72 69 67 68 74 2b  64 69 66 66 29 20 4d 4f  |pyright+diff) MO|
00001090  44 20 32 35 36 29 0d 20  20 32 35 30 20 20 20 20  |D 256).  250    |
000010a0  20 20 20 20 20 42 52 4b  0d 20 20 32 36 30 20 2e  |     BRK.  260 .|
000010b0  74 69 74 6c 65 0d 20 20  32 37 30 20 20 20 20 20  |title.  270     |
000010c0  20 20 20 20 4f 50 54 20  46 4e 65 71 75 73 28 22  |    OPT FNequs("|
000010d0  52 46 53 22 29 0d 20 20  32 38 30 20 2e 63 6f 70  |RFS").  280 .cop|
000010e0  79 72 69 67 68 74 0d 20  20 32 39 30 20 20 20 20  |yright.  290    |
000010f0  20 20 20 20 20 42 52 4b  0d 20 20 33 30 30 20 20  |     BRK.  300  |
00001100  20 20 20 20 20 20 20 4f  50 54 20 46 4e 65 71 75  |       OPT FNequ|
00001110  73 28 22 28 43 29 20 47  6f 72 64 6f 6e 20 48 6f  |s("(C) Gordon Ho|
00001120  72 73 69 6e 67 74 6f 6e  20 31 39 38 37 22 29 0d  |rsington 1987").|
00001130  20 20 33 31 30 20 20 20  20 20 20 20 20 20 42 52  |  310         BR|
00001140  4b 0d 20 20 33 32 30 20  2e 73 65 72 76 69 63 65  |K.  320 .service|
00001150  0d 20 20 33 33 30 20 20  20 20 20 20 20 20 20 50  |.  330         P|
00001160  48 41 0d 20 20 33 34 30  20 20 20 20 20 20 20 20  |HA.  340        |
00001170  20 43 4d 50 20 23 34 0d  20 20 33 35 30 20 20 20  | CMP #4.  350   |
00001180  20 20 20 20 20 20 42 4e  45 20 74 72 79 74 68 69  |      BNE trythi|
00001190  72 74 65 65 6e 0d 20 20  33 36 30 20 20 20 20 20  |rteen.  360     |
000011a0  20 20 20 20 54 58 41 0d  20 20 33 37 30 20 20 20  |    TXA.  370   |
000011b0  20 20 20 20 20 20 50 48  41 0d 20 20 33 38 30 20  |      PHA.  380 |
000011c0  20 20 20 20 20 20 20 20  54 59 41 0d 20 20 33 39  |        TYA.  39|
000011d0  30 20 20 20 20 20 20 20  20 20 50 48 41 0d 20 20  |0         PHA.  |
000011e0  34 30 30 20 20 20 20 20  20 20 20 20 4c 44 58 20  |400         LDX |
000011f0  23 26 46 46 0d 20 20 34  31 30 20 2e 63 6f 6d 6c  |#&FF.  410 .coml|
00001200  6f 6f 70 0d 20 20 34 32  30 20 20 20 20 20 20 20  |oop.  420       |
00001210  20 20 49 4e 58 0d 20 20  34 33 30 20 20 20 20 20  |  INX.  430     |
00001220  20 20 20 20 4c 44 41 20  74 69 74 6c 65 2b 64 69  |    LDA title+di|
00001230  66 66 2c 58 0d 20 20 34  34 30 20 20 20 20 20 20  |ff,X.  440      |
00001240  20 20 20 42 45 51 20 66  6f 75 6e 64 0d 20 20 34  |   BEQ found.  4|
00001250  35 30 20 20 20 20 20 20  20 20 20 4c 44 41 20 28  |50         LDA (|
00001260  63 6f 6d 76 65 63 29 2c  59 0d 20 20 34 36 30 20  |comvec),Y.  460 |
00001270  20 20 20 20 20 20 20 20  49 4e 59 0d 20 20 34 37  |        INY.  47|
00001280  30 20 20 20 20 20 20 20  20 20 43 4d 50 20 23 41  |0         CMP #A|
00001290  53 43 28 22 2e 22 29 0d  20 20 34 38 30 20 20 20  |SC(".").  480   |
000012a0  20 20 20 20 20 20 42 45  51 20 66 6f 75 6e 64 0d  |      BEQ found.|
000012b0  20 20 34 39 30 20 20 20  20 20 20 20 20 20 41 4e  |  490         AN|
000012c0  44 20 23 26 44 46 0d 20  20 35 30 30 20 20 20 20  |D #&DF.  500    |
000012d0  20 20 20 20 20 43 4d 50  20 74 69 74 6c 65 2b 64  |     CMP title+d|
000012e0  69 66 66 2c 58 0d 20 20  35 31 30 20 20 20 20 20  |iff,X.  510     |
000012f0  20 20 20 20 42 45 51 20  63 6f 6d 6c 6f 6f 70 0d  |    BEQ comloop.|
00001300  20 20 35 32 30 20 20 20  20 20 20 20 20 20 50 4c  |  520         PL|
00001310  41 0d 20 20 35 33 30 20  20 20 20 20 20 20 20 20  |A.  530         |
00001320  54 41 59 0d 20 20 35 34  30 20 20 20 20 20 20 20  |TAY.  540       |
00001330  20 20 50 4c 41 0d 20 20  35 35 30 20 20 20 20 20  |  PLA.  550     |
00001340  20 20 20 20 54 41 58 0d  20 20 35 36 30 20 20 20  |    TAX.  560   |
00001350  20 20 20 20 20 20 50 4c  41 0d 20 20 35 37 30 20  |      PLA.  570 |
00001360  20 20 20 20 20 20 20 20  52 54 53 0d 20 20 35 38  |        RTS.  58|
00001370  30 20 2e 66 6f 75 6e 64  0d 20 20 35 39 30 20 20  |0 .found.  590  |
00001380  20 20 20 20 20 20 20 4c  44 41 20 23 26 38 45 0d  |       LDA #&8E.|
00001390  20 20 36 30 30 20 20 20  20 20 20 20 20 20 4c 44  |  600         LD|
000013a0  58 20 72 6f 6d 6e 75 6d  62 65 72 0d 20 20 36 31  |X romnumber.  61|
000013b0  30 20 20 20 20 20 20 20  20 20 4a 4d 50 20 6f 73  |0         JMP os|
000013c0  62 79 74 65 20 20 20 20  5c 20 45 6e 74 65 72 20  |byte    \ Enter |
000013d0  74 68 69 73 20 52 4f 4d  0d 20 20 36 32 30 20 2e  |this ROM.  620 .|
000013e0  74 72 79 74 68 69 72 74  65 65 6e 0d 20 20 36 33  |trythirteen.  63|
000013f0  30 20 20 20 20 20 20 20  20 20 43 4d 50 20 23 31  |0         CMP #1|
00001400  33 0d 20 20 36 34 30 20  20 20 20 20 20 20 20 20  |3.  640         |
00001410  42 4e 45 20 66 6f 75 72  74 65 65 6e 0d 20 20 36  |BNE fourteen.  6|
00001420  35 30 20 20 20 20 20 20  20 20 20 54 59 41 0d 20  |50         TYA. |
00001430  20 36 36 30 20 20 20 20  20 20 20 20 20 45 4f 52  | 660         EOR|
00001440  20 23 26 46 0d 20 20 36  37 30 20 20 20 20 20 20  | #&F.  670      |
00001450  20 20 20 43 4d 50 20 72  6f 6d 6e 75 6d 62 65 72  |   CMP romnumber|
00001460  0d 20 20 36 38 30 20 20  20 20 20 20 20 20 20 42  |.  680         B|
00001470  43 43 20 6f 75 74 0d 20  20 36 39 30 20 20 20 20  |CC out.  690    |
00001480  20 20 20 20 20 4c 44 41  20 23 28 6c 61 73 74 62  |     LDA #(lastb|
00001490  79 74 65 2b 64 69 66 66  29 20 4d 4f 44 20 32 35  |yte+diff) MOD 25|
000014a0  36 0d 20 20 37 30 30 20  20 20 20 20 20 20 20 20  |6.  700         |
000014b0  53 54 41 20 72 6f 6d 70  6f 69 6e 74 0d 20 20 37  |STA rompoint.  7|
000014c0  31 30 20 20 20 20 20 20  20 20 20 4c 44 41 20 23  |10         LDA #|
000014d0  28 6c 61 73 74 62 79 74  65 2b 64 69 66 66 29 20  |(lastbyte+diff) |
000014e0  44 49 56 20 32 35 36 0d  20 20 37 32 30 20 20 20  |DIV 256.  720   |
000014f0  20 20 20 20 20 20 53 54  41 20 72 6f 6d 70 6f 69  |      STA rompoi|
00001500  6e 74 2b 31 0d 20 20 37  33 30 20 20 20 20 20 20  |nt+1.  730      |
00001510  20 20 20 4c 44 41 20 72  6f 6d 6e 75 6d 62 65 72  |   LDA romnumber|
00001520  0d 20 20 37 34 30 20 20  20 20 20 20 20 20 20 45  |.  740         E|
00001530  4f 52 20 23 26 46 0d 20  20 37 35 30 20 20 20 20  |OR #&F.  750    |
00001540  20 20 20 20 20 53 54 41  20 70 68 72 6f 6d 0d 20  |     STA phrom. |
00001550  20 37 36 30 20 2e 65 78  69 74 0d 20 20 37 37 30  | 760 .exit.  770|
00001560  20 20 20 20 20 20 20 20  20 50 4c 41 0d 20 20 37  |         PLA.  7|
00001570  38 30 20 20 20 20 20 20  20 20 20 4c 44 41 20 23  |80         LDA #|
00001580  30 0d 20 20 37 39 30 20  20 20 20 20 20 20 20 20  |0.  790         |
00001590  52 54 53 0d 20 20 38 30  30 20 2e 66 6f 75 72 74  |RTS.  800 .fourt|
000015a0  65 65 6e 0d 20 20 38 31  30 20 20 20 20 20 20 20  |een.  810       |
000015b0  20 20 43 4d 50 20 23 31  34 0d 20 20 38 32 30 20  |  CMP #14.  820 |
000015c0  20 20 20 20 20 20 20 20  42 4e 45 20 74 72 79 74  |        BNE tryt|
000015d0  68 72 65 65 0d 20 20 38  33 30 20 20 20 20 20 20  |hree.  830      |
000015e0  20 20 20 4c 44 41 20 70  68 72 6f 6d 0d 20 20 38  |   LDA phrom.  8|
000015f0  34 30 20 20 20 20 20 20  20 20 20 45 4f 52 20 23  |40         EOR #|
00001600  26 46 0d 20 20 38 35 30  20 20 20 20 20 20 20 20  |&F.  850        |
00001610  20 43 4d 50 20 72 6f 6d  6e 75 6d 62 65 72 0d 20  | CMP romnumber. |
00001620  20 38 36 30 20 20 20 20  20 20 20 20 20 42 4e 45  | 860         BNE|
00001630  20 6f 75 74 0d 20 20 38  37 30 20 20 20 20 20 20  | out.  870      |
00001640  20 20 20 4c 44 59 20 23  30 0d 20 20 38 38 30 20  |   LDY #0.  880 |
00001650  20 20 20 20 20 20 20 20  4c 44 41 20 28 72 6f 6d  |        LDA (rom|
00001660  70 6f 69 6e 74 29 2c 59  0d 20 20 38 39 30 20 20  |point),Y.  890  |
00001670  20 20 20 20 20 20 20 54  41 59 0d 20 20 39 30 30  |       TAY.  900|
00001680  20 20 20 20 20 20 20 20  20 49 4e 43 20 72 6f 6d  |         INC rom|
00001690  70 6f 69 6e 74 0d 20 20  39 31 30 20 20 20 20 20  |point.  910     |
000016a0  20 20 20 20 42 4e 45 20  65 78 69 74 0d 20 20 39  |    BNE exit.  9|
000016b0  32 30 20 20 20 20 20 20  20 20 20 49 4e 43 20 72  |20         INC r|
000016c0  6f 6d 70 6f 69 6e 74 2b  31 0d 20 20 39 33 30 20  |ompoint+1.  930 |
000016d0  20 20 20 20 20 20 20 20  4a 4d 50 20 65 78 69 74  |        JMP exit|
000016e0  2b 64 69 66 66 0d 20 20  39 34 30 20 2e 6f 75 74  |+diff.  940 .out|
000016f0  0d 20 20 39 35 30 20 20  20 20 20 20 20 20 20 50  |.  950         P|
00001700  4c 41 0d 20 20 39 36 30  20 20 20 20 20 20 20 20  |LA.  960        |
00001710  20 52 54 53 0d 20 20 39  37 30 20 2e 74 72 79 74  | RTS.  970 .tryt|
00001720  68 72 65 65 0d 20 20 39  38 30 20 20 20 20 20 20  |hree.  980      |
00001730  20 20 20 43 4d 50 20 23  33 0d 20 20 39 39 30 20  |   CMP #3.  990 |
00001740  20 20 20 20 20 20 20 20  42 4e 45 20 74 72 79 6e  |        BNE tryn|
00001750  69 6e 65 0d 20 31 30 30  30 20 20 20 20 20 20 20  |ine. 1000       |
00001760  20 20 4a 4d 50 20 74 68  72 65 65 2b 64 69 66 66  |  JMP three+diff|
00001770  0d 20 31 30 31 30 20 2e  74 72 79 6e 69 6e 65 0d  |. 1010 .trynine.|
00001780  20 31 30 32 30 20 20 20  20 20 20 20 20 20 43 4d  | 1020         CM|
00001790  50 20 23 39 0d 20 31 30  33 30 20 20 20 20 20 20  |P #9. 1030      |
000017a0  20 20 20 42 4e 45 20 6f  75 74 0d 20 31 30 34 30  |   BNE out. 1040|
000017b0  20 20 20 20 20 20 20 20  20 54 58 41 0d 20 31 30  |         TXA. 10|
000017c0  35 30 20 20 20 20 20 20  20 20 20 50 48 41 0d 20  |50         PHA. |
000017d0  31 30 36 30 20 20 20 20  20 20 20 20 20 54 59 41  |1060         TYA|
000017e0  0d 20 31 30 37 30 20 20  20 20 20 20 20 20 20 50  |. 1070         P|
000017f0  48 41 0d 20 31 30 38 30  20 20 20 20 20 20 20 20  |HA. 1080        |
00001800  20 4c 44 41 20 61 64 64  72 65 73 73 0d 20 31 30  | LDA address. 10|
00001810  39 30 20 20 20 20 20 20  20 20 20 50 48 41 0d 20  |90         PHA. |
00001820  31 31 30 30 20 20 20 20  20 20 20 20 20 4c 44 41  |1100         LDA|
00001830  20 61 64 64 72 65 73 73  2b 31 0d 20 31 31 31 30  | address+1. 1110|
00001840  20 20 20 20 20 20 20 20  20 50 48 41 0d 20 31 31  |         PHA. 11|
00001850  32 30 20 20 20 20 20 20  20 20 20 53 45 43 0d 20  |20         SEC. |
00001860  31 31 33 30 20 20 20 20  20 20 20 20 20 4a 53 52  |1130         JSR|
00001870  20 67 73 69 6e 69 74 0d  20 31 31 34 30 20 20 20  | gsinit. 1140   |
00001880  20 20 20 20 20 20 4c 44  58 20 23 30 0d 20 31 31  |      LDX #0. 11|
00001890  35 30 20 20 20 20 20 20  20 20 20 4a 53 52 20 67  |50         JSR g|
000018a0  73 72 65 61 64 0d 20 31  31 36 30 20 20 20 20 20  |sread. 1160     |
000018b0  20 20 20 20 42 43 43 20  74 72 79 65 78 74 65 6e  |    BCC tryexten|
000018c0  64 65 64 0d 20 31 31 37  30 20 20 20 20 20 20 20  |ded. 1170       |
000018d0  20 20 4c 44 58 20 23 28  68 65 6c 70 74 69 74 6c  |  LDX #(helptitl|
000018e0  65 2b 64 69 66 66 29 20  4d 4f 44 20 32 35 36 0d  |e+diff) MOD 256.|
000018f0  20 31 31 38 30 20 20 20  20 20 20 20 20 20 4c 44  | 1180         LD|
00001900  59 20 23 28 68 65 6c 70  74 69 74 6c 65 2b 64 69  |Y #(helptitle+di|
00001910  66 66 29 20 44 49 56 20  32 35 36 0d 20 31 31 39  |ff) DIV 256. 119|
00001920  30 20 20 20 20 20 20 20  20 20 4a 53 52 20 70 72  |0         JSR pr|
00001930  69 6e 74 2b 64 69 66 66  0d 20 31 32 30 30 20 2e  |int+diff. 1200 .|
00001940  65 78 69 74 68 65 6c 70  0d 20 31 32 31 30 20 20  |exithelp. 1210  |
00001950  20 20 20 20 20 20 20 50  4c 41 0d 20 31 32 32 30  |       PLA. 1220|
00001960  20 20 20 20 20 20 20 20  20 53 54 41 20 61 64 64  |         STA add|
00001970  72 65 73 73 2b 31 0d 20  31 32 33 30 20 20 20 20  |ress+1. 1230    |
00001980  20 20 20 20 20 50 4c 41  0d 20 31 32 34 30 20 20  |     PLA. 1240  |
00001990  20 20 20 20 20 20 20 53  54 41 20 61 64 64 72 65  |       STA addre|
000019a0  73 73 0d 20 31 32 35 30  20 20 20 20 20 20 20 20  |ss. 1250        |
000019b0  20 50 4c 41 0d 20 31 32  36 30 20 20 20 20 20 20  | PLA. 1260      |
000019c0  20 20 20 54 41 59 0d 20  31 32 37 30 20 20 20 20  |   TAY. 1270    |
000019d0  20 20 20 20 20 50 4c 41  0d 20 31 32 38 30 20 20  |     PLA. 1280  |
000019e0  20 20 20 20 20 20 20 54  41 58 0d 20 31 32 39 30  |       TAX. 1290|
000019f0  20 20 20 20 20 20 20 20  20 50 4c 41 0d 20 31 33  |         PLA. 13|
00001a00  30 30 20 20 20 20 20 20  20 20 20 52 54 53 0d 20  |00         RTS. |
00001a10  31 33 31 30 20 2e 68 65  6c 70 6c 6f 6f 70 0d 20  |1310 .helploop. |
00001a20  31 33 32 30 20 20 20 20  20 20 20 20 20 49 4e 58  |1320         INX|
00001a30  0d 20 31 33 33 30 20 20  20 20 20 20 20 20 20 4a  |. 1330         J|
00001a40  53 52 20 67 73 72 65 61  64 0d 20 31 33 34 30 20  |SR gsread. 1340 |
00001a50  2e 74 72 79 65 78 74 65  6e 64 65 64 0d 20 31 33  |.tryextended. 13|
00001a60  35 30 20 20 20 20 20 20  20 20 20 43 4d 50 20 23  |50         CMP #|
00001a70  41 53 43 28 22 2e 22 29  0d 20 31 33 36 30 20 20  |ASC("."). 1360  |
00001a80  20 20 20 20 20 20 20 42  45 51 20 65 78 74 65 6e  |       BEQ exten|
00001a90  73 69 6f 6e 0d 20 31 33  37 30 20 20 20 20 20 20  |sion. 1370      |
00001aa0  20 20 20 41 4e 44 20 23  26 44 46 0d 20 31 33 38  |   AND #&DF. 138|
00001ab0  30 20 20 20 20 20 20 20  20 20 43 4d 50 20 65 78  |0         CMP ex|
00001ac0  74 65 6e 64 65 64 2b 64  69 66 66 2c 58 0d 20 31  |tended+diff,X. 1|
00001ad0  33 39 30 20 20 20 20 20  20 20 20 20 42 45 51 20  |390         BEQ |
00001ae0  68 65 6c 70 6c 6f 6f 70  0d 20 31 34 30 30 20 20  |helploop. 1400  |
00001af0  20 20 20 20 20 20 20 4c  44 41 20 65 78 74 65 6e  |       LDA exten|
00001b00  64 65 64 2b 64 69 66 66  2c 58 0d 20 31 34 31 30  |ded+diff,X. 1410|
00001b10  20 20 20 20 20 20 20 20  20 42 50 4c 20 65 78 69  |         BPL exi|
00001b20  74 68 65 6c 70 0d 20 31  34 32 30 20 2e 65 78 74  |thelp. 1420 .ext|
00001b30  65 6e 73 69 6f 6e 0d 20  31 34 33 30 20 20 20 20  |ension. 1430    |
00001b40  20 20 20 20 20 4c 44 58  20 23 28 65 78 74 68 65  |     LDX #(exthe|
00001b50  6c 70 2b 64 69 66 66 29  20 4d 4f 44 20 32 35 36  |lp+diff) MOD 256|
00001b60  0d 20 31 34 34 30 20 20  20 20 20 20 20 20 20 4c  |. 1440         L|
00001b70  44 59 20 23 28 65 78 74  68 65 6c 70 2b 64 69 66  |DY #(exthelp+dif|
00001b80  66 29 20 44 49 56 20 32  35 36 0d 20 31 34 35 30  |f) DIV 256. 1450|
00001b90  20 20 20 20 20 20 20 20  20 4a 53 52 20 70 72 69  |         JSR pri|
00001ba0  6e 74 2b 64 69 66 66 0d  20 31 34 36 30 20 20 20  |nt+diff. 1460   |
00001bb0  20 20 20 20 20 20 42 45  51 20 65 78 69 74 68 65  |      BEQ exithe|
00001bc0  6c 70 0d 20 31 34 37 30  20 2e 70 72 69 6e 74 0d  |lp. 1470 .print.|
00001bd0  20 31 34 38 30 20 20 20  20 20 20 20 20 20 53 54  | 1480         ST|
00001be0  58 20 61 64 64 72 65 73  73 0d 20 31 34 39 30 20  |X address. 1490 |
00001bf0  20 20 20 20 20 20 20 20  53 54 59 20 61 64 64 72  |        STY addr|
00001c00  65 73 73 2b 31 0d 20 31  35 30 30 20 20 20 20 20  |ess+1. 1500     |
00001c10  20 20 20 20 4c 44 59 20  23 26 46 46 0d 20 31 35  |    LDY #&FF. 15|
00001c20  31 30 20 2e 70 72 69 6e  74 6c 6f 6f 70 0d 20 31  |10 .printloop. 1|
00001c30  35 32 30 20 20 20 20 20  20 20 20 20 49 4e 59 0d  |520         INY.|
00001c40  20 31 35 33 30 20 20 20  20 20 20 20 20 20 4c 44  | 1530         LD|
00001c50  41 20 28 61 64 64 72 65  73 73 29 2c 59 0d 20 31  |A (address),Y. 1|
00001c60  35 34 30 20 20 20 20 20  20 20 20 20 42 45 51 20  |540         BEQ |
00001c70  65 6e 64 70 72 69 6e 74  0d 20 31 35 35 30 20 20  |endprint. 1550  |
00001c80  20 20 20 20 20 20 20 42  4d 49 20 70 72 69 6e 74  |       BMI print|
00001c90  6c 6f 6f 70 0d 20 31 35  36 30 20 20 20 20 20 20  |loop. 1560      |
00001ca0  20 20 20 4a 53 52 20 6f  73 61 73 63 69 0d 20 31  |   JSR osasci. 1|
00001cb0  35 37 30 20 20 20 20 20  20 20 20 20 4a 4d 50 20  |570         JMP |
00001cc0  70 72 69 6e 74 6c 6f 6f  70 2b 64 69 66 66 0d 20  |printloop+diff. |
00001cd0  31 35 38 30 20 2e 65 6e  64 70 72 69 6e 74 0d 20  |1580 .endprint. |
00001ce0  31 35 39 30 20 20 20 20  20 20 20 20 20 52 54 53  |1590         RTS|
00001cf0  0d 20 31 36 30 30 20 2e  68 65 6c 70 74 69 74 6c  |. 1600 .helptitl|
00001d00  65 0d 20 31 36 31 30 20  20 20 20 20 20 20 20 20  |e. 1610         |
00001d10  4f 50 54 20 46 4e 65 71  75 62 28 26 30 44 29 0d  |OPT FNequb(&0D).|
00001d20  20 31 36 32 30 20 20 20  20 20 20 20 20 20 4f 50  | 1620         OP|
00001d30  54 20 46 4e 65 71 75 73  28 22 52 6f 6d 20 46 69  |T FNequs("Rom Fi|
00001d40  6c 69 6e 67 20 53 79 73  74 65 6d 22 29 0d 20 31  |ling System"). 1|
00001d50  36 33 30 20 20 20 20 20  20 20 20 20 4f 50 54 20  |630         OPT |
00001d60  46 4e 65 71 75 62 28 26  30 44 29 0d 20 31 36 34  |FNequb(&0D). 164|
00001d70  30 20 20 20 20 20 20 20  20 20 4f 50 54 20 46 4e  |0         OPT FN|
00001d80  65 71 75 77 28 26 32 30  32 30 29 0d 20 31 36 35  |equw(&2020). 165|
00001d90  30 20 2e 65 78 74 65 6e  64 65 64 0d 20 31 36 36  |0 .extended. 166|
00001da0  30 20 20 20 20 20 20 20  20 20 4f 50 54 20 46 4e  |0         OPT FN|
00001db0  65 71 75 73 28 22 52 46  53 22 29 0d 20 31 36 37  |equs("RFS"). 167|
00001dc0  30 20 20 20 20 20 20 20  20 20 4f 50 54 20 46 4e  |0         OPT FN|
00001dd0  65 71 75 77 28 26 30 44  46 46 29 0d 20 31 36 38  |equw(&0DFF). 168|
00001de0  30 20 20 20 20 20 20 20  20 20 42 52 4b 0d 20 31  |0         BRK. 1|
00001df0  36 39 30 20 2e 65 78 74  68 65 6c 70 0d 20 31 37  |690 .exthelp. 17|
00001e00  30 30 20 20 20 20 20 20  20 20 20 4f 50 54 20 46  |00         OPT F|
00001e10  4e 65 71 75 62 28 26 30  44 29 0d 20 31 37 31 30  |Nequb(&0D). 1710|
00001e20  20 20 20 20 20 20 20 20  20 4f 50 54 20 46 4e 65  |         OPT FNe|
00001e30  71 75 73 28 22 52 6f 6d  20 46 69 6c 69 6e 67 20  |qus("Rom Filing |
00001e40  53 79 73 74 65 6d 22 29  0d 20 31 37 32 30 20 20  |System"). 1720  |
00001e50  20 20 20 20 20 20 20 4f  50 54 20 46 4e 65 71 75  |       OPT FNequ|
00001e60  77 28 26 30 44 30 44 29  0d 20 31 37 33 30 20 20  |w(&0D0D). 1730  |
00001e70  20 20 20 20 20 20 20 4f  50 54 20 46 4e 65 71 75  |       OPT FNequ|
00001e80  73 28 22 53 65 6c 65 63  74 20 52 46 53 20 77 69  |s("Select RFS wi|
00001e90  74 68 20 2a 52 4f 4d 22  29 0d 20 31 37 34 30 20  |th *ROM"). 1740 |
00001ea0  20 20 20 20 20 20 20 20  4f 50 54 20 46 4e 65 71  |        OPT FNeq|
00001eb0  75 62 28 26 30 44 29 0d  20 31 37 35 30 20 20 20  |ub(&0D). 1750   |
00001ec0  20 20 20 20 20 20 4f 50  54 20 46 4e 65 71 75 73  |      OPT FNequs|
00001ed0  28 22 42 6f 6f 74 20 52  46 53 20 77 69 74 68 20  |("Boot RFS with |
00001ee0  43 74 72 6c 2b 52 2b 42  72 65 61 6b 22 29 0d 20  |Ctrl+R+Break"). |
00001ef0  31 37 36 30 20 20 20 20  20 20 20 20 20 4f 50 54  |1760         OPT|
00001f00  20 46 4e 65 71 75 62 28  26 30 44 29 0d 20 31 37  | FNequb(&0D). 17|
00001f10  37 30 20 20 20 20 20 20  20 20 20 4f 50 54 20 46  |70         OPT F|
00001f20  4e 65 71 75 73 28 22 45  6e 74 65 72 20 52 46 53  |Nequs("Enter RFS|
00001f30  20 77 69 74 68 20 2a 52  46 53 20 6f 72 20 2a 46  | with *RFS or *F|
00001f40  58 31 34 32 2c 6e 22 29  0d 20 31 37 38 30 20 20  |X142,n"). 1780  |
00001f50  20 20 20 20 20 20 20 4f  50 54 20 46 4e 65 71 75  |       OPT FNequ|
00001f60  62 28 26 30 44 29 0d 20  31 37 39 30 20 20 20 20  |b(&0D). 1790    |
00001f70  20 20 20 20 20 42 52 4b  0d 20 31 38 30 30 20 2e  |     BRK. 1800 .|
00001f80  74 68 72 65 65 0d 20 31  38 31 30 20 20 20 20 20  |three. 1810     |
00001f90  20 20 20 20 54 58 41 0d  20 31 38 32 30 20 20 20  |    TXA. 1820   |
00001fa0  20 20 20 20 20 20 50 48  41 0d 20 31 38 33 30 20  |      PHA. 1830 |
00001fb0  20 20 20 20 20 20 20 20  54 59 41 0d 20 31 38 34  |        TYA. 184|
00001fc0  30 20 20 20 20 20 20 20  20 20 50 48 41 0d 20 31  |0         PHA. 1|
00001fd0  38 35 30 20 20 20 20 20  20 20 20 20 4c 44 41 20  |850         LDA |
00001fe0  23 26 37 41 0d 20 31 38  36 30 20 20 20 20 20 20  |#&7A. 1860      |
00001ff0  20 20 20 4a 53 52 20 6f  73 62 79 74 65 0d 20 31  |   JSR osbyte. 1|
00002000  38 37 30 20 20 20 20 20  20 20 20 20 43 50 58 20  |870         CPX |
00002010  23 26 33 33 20 20 20 20  20 20 5c 20 49 73 20 69  |#&33      \ Is i|
00002020  74 20 43 74 72 6c 2b 52  2b 42 72 65 61 6b 3f 0d  |t Ctrl+R+Break?.|
00002030  20 31 38 38 30 20 20 20  20 20 20 20 20 20 42 45  | 1880         BE|
00002040  51 20 72 62 72 65 61 6b  0d 20 31 38 39 30 20 20  |Q rbreak. 1890  |
00002050  20 20 20 20 20 20 20 50  4c 41 0d 20 31 39 30 30  |       PLA. 1900|
00002060  20 20 20 20 20 20 20 20  20 54 41 59 0d 20 31 39  |         TAY. 19|
00002070  31 30 20 20 20 20 20 20  20 20 20 50 4c 41 0d 20  |10         PLA. |
00002080  31 39 32 30 20 20 20 20  20 20 20 20 20 54 41 58  |1920         TAX|
00002090  0d 20 31 39 33 30 20 20  20 20 20 20 20 20 20 50  |. 1930         P|
000020a0  4c 41 0d 20 31 39 34 30  20 20 20 20 20 20 20 20  |LA. 1940        |
000020b0  20 52 54 53 0d 20 31 39  35 30 20 2e 72 62 72 65  | RTS. 1950 .rbre|
000020c0  61 6b 0d 20 31 39 36 30  20 20 20 20 20 20 20 20  |ak. 1960        |
000020d0  20 4c 44 41 20 23 26 43  39 0d 20 31 39 37 30 20  | LDA #&C9. 1970 |
000020e0  20 20 20 20 20 20 20 20  4c 44 58 20 23 31 0d 20  |        LDX #1. |
000020f0  31 39 38 30 20 20 20 20  20 20 20 20 20 4c 44 59  |1980         LDY|
00002100  20 23 30 0d 20 31 39 39  30 20 20 20 20 20 20 20  | #0. 1990       |
00002110  20 20 4a 53 52 20 6f 73  62 79 74 65 20 20 20 20  |  JSR osbyte    |
00002120  5c 20 44 69 73 61 62 6c  65 20 6b 65 79 62 6f 61  |\ Disable keyboa|
00002130  72 64 0d 20 32 30 30 30  20 20 20 20 20 20 20 20  |rd. 2000        |
00002140  20 4c 44 41 20 23 26 30  46 0d 20 32 30 31 30 20  | LDA #&0F. 2010 |
00002150  20 20 20 20 20 20 20 20  4c 44 58 20 23 30 0d 20  |        LDX #0. |
00002160  32 30 32 30 20 20 20 20  20 20 20 20 20 4a 53 52  |2020         JSR|
00002170  20 6f 73 62 79 74 65 20  20 20 20 5c 20 46 6c 75  | osbyte    \ Flu|
00002180  73 68 20 61 6c 6c 20 62  75 66 66 65 72 73 0d 20  |sh all buffers. |
00002190  32 30 33 30 20 20 20 20  20 20 20 20 20 4c 44 41  |2030         LDA|
000021a0  20 61 64 64 72 65 73 73  0d 20 32 30 34 30 20 20  | address. 2040  |
000021b0  20 20 20 20 20 20 20 50  48 41 0d 20 32 30 35 30  |       PHA. 2050|
000021c0  20 20 20 20 20 20 20 20  20 4c 44 41 20 61 64 64  |         LDA add|
000021d0  72 65 73 73 2b 31 0d 20  32 30 36 30 20 20 20 20  |ress+1. 2060    |
000021e0  20 20 20 20 20 50 48 41  0d 20 32 30 37 30 20 20  |     PHA. 2070  |
000021f0  20 20 20 20 20 20 20 4c  44 58 20 23 28 72 66 73  |       LDX #(rfs|
00002200  2b 64 69 66 66 29 20 4d  4f 44 20 32 35 36 0d 20  |+diff) MOD 256. |
00002210  32 30 38 30 20 20 20 20  20 20 20 20 20 4c 44 59  |2080         LDY|
00002220  20 23 28 72 66 73 2b 64  69 66 66 29 20 44 49 56  | #(rfs+diff) DIV|
00002230  20 32 35 36 0d 20 32 30  39 30 20 20 20 20 20 20  | 256. 2090      |
00002240  20 20 20 4a 53 52 20 70  72 69 6e 74 2b 64 69 66  |   JSR print+dif|
00002250  66 0d 20 32 31 30 30 20  20 20 20 20 20 20 20 20  |f. 2100         |
00002260  4c 44 58 20 23 28 63 61  74 2b 64 69 66 66 29 20  |LDX #(cat+diff) |
00002270  4d 4f 44 20 32 35 36 0d  20 32 31 31 30 20 20 20  |MOD 256. 2110   |
00002280  20 20 20 20 20 20 4c 44  59 20 23 28 63 61 74 2b  |      LDY #(cat+|
00002290  64 69 66 66 29 20 44 49  56 20 32 35 36 0d 20 32  |diff) DIV 256. 2|
000022a0  31 32 30 20 20 20 20 20  20 20 20 20 4a 53 52 20  |120         JSR |
000022b0  70 72 69 6e 74 2b 64 69  66 66 0d 20 32 31 33 30  |print+diff. 2130|
000022c0  20 20 20 20 20 20 20 20  20 4c 44 41 20 23 26 38  |         LDA #&8|
000022d0  44 0d 20 32 31 34 30 20  20 20 20 20 20 20 20 20  |D. 2140         |
000022e0  4a 53 52 20 6f 73 62 79  74 65 20 20 20 20 5c 20  |JSR osbyte    \ |
000022f0  53 65 6c 65 63 74 20 52  46 53 0d 20 32 31 35 30  |Select RFS. 2150|
00002300  20 20 20 20 20 20 20 20  20 4c 44 41 20 23 26 38  |         LDA #&8|
00002310  42 0d 20 32 31 36 30 20  20 20 20 20 20 20 20 20  |B. 2160         |
00002320  4c 44 58 20 23 31 0d 20  32 31 37 30 20 20 20 20  |LDX #1. 2170    |
00002330  20 20 20 20 20 4c 44 59  20 23 32 0d 20 32 31 38  |     LDY #2. 218|
00002340  30 20 20 20 20 20 20 20  20 20 4a 53 52 20 6f 73  |0         JSR os|
00002350  62 79 74 65 20 20 20 20  5c 20 2a 4f 50 54 31 2c  |byte    \ *OPT1,|
00002360  32 0d 20 32 31 39 30 20  20 20 20 20 20 20 20 20  |2. 2190         |
00002370  4c 44 58 20 23 28 64 6f  74 2b 64 69 66 66 29 20  |LDX #(dot+diff) |
00002380  4d 4f 44 20 32 35 36 0d  20 32 32 30 30 20 20 20  |MOD 256. 2200   |
00002390  20 20 20 20 20 20 4c 44  59 20 23 28 64 6f 74 2b  |      LDY #(dot+|
000023a0  64 69 66 66 29 20 44 49  56 20 32 35 36 0d 20 32  |diff) DIV 256. 2|
000023b0  32 31 30 20 20 20 20 20  20 20 20 20 4a 53 52 20  |210         JSR |
000023c0  6f 73 63 6c 69 20 20 20  20 20 5c 20 43 61 74 61  |oscli     \ Cata|
000023d0  6c 6f 67 75 65 20 52 46  53 0d 20 32 32 32 30 20  |logue RFS. 2220 |
000023e0  20 20 20 20 20 20 20 20  4c 44 41 20 23 26 38 42  |        LDA #&8B|
000023f0  0d 20 32 32 33 30 20 20  20 20 20 20 20 20 20 4c  |. 2230         L|
00002400  44 58 20 23 30 0d 20 32  32 34 30 20 20 20 20 20  |DX #0. 2240     |
00002410  20 20 20 20 4c 44 59 20  23 30 0d 20 32 32 35 30  |    LDY #0. 2250|
00002420  20 20 20 20 20 20 20 20  20 4a 53 52 20 6f 73 62  |         JSR osb|
00002430  79 74 65 20 20 20 20 5c  20 2a 4f 50 54 20 31 2c  |yte    \ *OPT 1,|
00002440  30 0d 20 32 32 36 30 20  20 20 20 20 20 20 20 20  |0. 2260         |
00002450  4a 53 52 20 6f 73 6e 65  77 6c 0d 20 32 32 37 30  |JSR osnewl. 2270|
00002460  20 20 20 20 20 20 20 20  20 4c 44 58 20 23 28 72  |         LDX #(r|
00002470  66 73 2b 64 69 66 66 29  20 4d 4f 44 20 32 35 36  |fs+diff) MOD 256|
00002480  0d 20 32 32 38 30 20 20  20 20 20 20 20 20 20 4c  |. 2280         L|
00002490  44 59 20 23 28 72 66 73  2b 64 69 66 66 29 20 44  |DY #(rfs+diff) D|
000024a0  49 56 20 32 35 36 0d 20  32 32 39 30 20 20 20 20  |IV 256. 2290    |
000024b0  20 20 20 20 20 4a 53 52  20 70 72 69 6e 74 2b 64  |     JSR print+d|
000024c0  69 66 66 0d 20 32 33 30  30 20 20 20 20 20 20 20  |iff. 2300       |
000024d0  20 20 4c 44 58 20 23 28  61 63 74 2b 64 69 66 66  |  LDX #(act+diff|
000024e0  29 20 4d 4f 44 20 32 35  36 0d 20 32 33 31 30 20  |) MOD 256. 2310 |
000024f0  20 20 20 20 20 20 20 20  4c 44 59 20 23 28 61 63  |        LDY #(ac|
00002500  74 2b 64 69 66 66 29 20  44 49 56 20 32 35 36 0d  |t+diff) DIV 256.|
00002510  20 32 33 32 30 20 20 20  20 20 20 20 20 20 4a 53  | 2320         JS|
00002520  52 20 70 72 69 6e 74 2b  64 69 66 66 0d 20 32 33  |R print+diff. 23|
00002530  33 30 20 20 20 20 20 20  20 20 20 50 4c 41 0d 20  |30         PLA. |
00002540  32 33 34 30 20 20 20 20  20 20 20 20 20 53 54 41  |2340         STA|
00002550  20 61 64 64 72 65 73 73  2b 31 0d 20 32 33 35 30  | address+1. 2350|
00002560  20 20 20 20 20 20 20 20  20 50 4c 41 0d 20 32 33  |         PLA. 23|
00002570  36 30 20 20 20 20 20 20  20 20 20 53 54 41 20 61  |60         STA a|
00002580  64 64 72 65 73 73 0d 20  32 33 37 30 20 20 20 20  |ddress. 2370    |
00002590  20 20 20 20 20 4c 44 41  20 23 26 43 39 0d 20 32  |     LDA #&C9. 2|
000025a0  33 38 30 20 20 20 20 20  20 20 20 20 4c 44 58 20  |380         LDX |
000025b0  23 30 0d 20 32 33 39 30  20 20 20 20 20 20 20 20  |#0. 2390        |
000025c0  20 4c 44 59 20 23 30 0d  20 32 34 30 30 20 20 20  | LDY #0. 2400   |
000025d0  20 20 20 20 20 20 4a 53  52 20 6f 73 62 79 74 65  |      JSR osbyte|
000025e0  20 20 20 20 5c 20 45 6e  61 62 6c 65 20 6b 65 79  |    \ Enable key|
000025f0  62 6f 61 72 64 0d 20 32  34 31 30 20 20 20 20 20  |board. 2410     |
00002600  20 20 20 20 50 4c 41 0d  20 32 34 32 30 20 20 20  |    PLA. 2420   |
00002610  20 20 20 20 20 20 50 4c  41 0d 20 32 34 33 30 20  |      PLA. 2430 |
00002620  20 20 20 20 20 20 20 20  50 4c 41 0d 20 32 34 34  |        PLA. 244|
00002630  30 20 20 20 20 20 20 20  20 20 4c 44 41 20 23 30  |0         LDA #0|
00002640  0d 20 32 34 35 30 20 20  20 20 20 20 20 20 20 52  |. 2450         R|
00002650  54 53 0d 20 32 34 36 30  20 2e 64 6f 74 0d 20 32  |TS. 2460 .dot. 2|
00002660  34 37 30 20 20 20 20 20  20 20 20 20 4f 50 54 20  |470         OPT |
00002670  46 4e 65 71 75 73 28 22  43 41 54 22 29 0d 20 32  |FNequs("CAT"). 2|
00002680  34 38 30 20 20 20 20 20  20 20 20 20 4f 50 54 20  |480         OPT |
00002690  46 4e 65 71 75 62 28 26  30 44 29 0d 20 32 34 39  |FNequb(&0D). 249|
000026a0  30 20 2e 72 66 73 0d 20  32 35 30 30 20 20 20 20  |0 .rfs. 2500    |
000026b0  20 20 20 20 20 4f 50 54  20 46 4e 65 71 75 73 28  |     OPT FNequs(|
000026c0  22 52 6f 6d 20 46 69 6c  69 6e 67 20 53 79 73 74  |"Rom Filing Syst|
000026d0  65 6d 20 22 29 0d 20 32  35 31 30 20 20 20 20 20  |em "). 2510     |
000026e0  20 20 20 20 42 52 4b 0d  20 32 35 32 30 20 2e 63  |    BRK. 2520 .c|
000026f0  61 74 0d 20 32 35 33 30  20 20 20 20 20 20 20 20  |at. 2530        |
00002700  20 4f 50 54 20 46 4e 65  71 75 73 28 22 43 61 74  | OPT FNequs("Cat|
00002710  61 6c 6f 67 75 65 22 29  0d 20 32 35 34 30 20 20  |alogue"). 2540  |
00002720  20 20 20 20 20 20 20 4f  50 54 20 46 4e 65 71 75  |       OPT FNequ|
00002730  62 28 26 30 44 29 0d 20  32 35 35 30 20 20 20 20  |b(&0D). 2550    |
00002740  20 20 20 20 20 42 52 4b  0d 20 32 35 36 30 20 2e  |     BRK. 2560 .|
00002750  61 63 74 0d 20 32 35 37  30 20 20 20 20 20 20 20  |act. 2570       |
00002760  20 20 4f 50 54 20 46 4e  65 71 75 73 28 22 61 63  |  OPT FNequs("ac|
00002770  74 69 76 65 22 29 0d 20  32 35 38 30 20 20 20 20  |tive"). 2580    |
00002780  20 20 20 20 20 4f 50 54  20 46 4e 65 71 75 77 28  |     OPT FNequw(|
00002790  26 30 44 30 44 29 0d 20  32 35 39 30 20 20 20 20  |&0D0D). 2590    |
000027a0  20 20 20 20 20 42 52 4b  0d 20 32 36 30 30 20 2e  |     BRK. 2600 .|
000027b0  6c 61 6e 67 75 61 67 65  0d 20 32 36 31 30 20 20  |language. 2610  |
000027c0  20 20 20 20 20 20 20 43  4c 49 20 20 20 20 20 20  |       CLI      |
000027d0  20 20 20 20 20 5c 20 45  6e 61 62 6c 65 20 69 6e  |     \ Enable in|
000027e0  74 65 72 75 70 74 20 72  65 71 75 65 73 74 73 0d  |terupt requests.|
000027f0  20 32 36 32 30 20 20 20  20 20 20 20 20 20 4c 44  | 2620         LD|
00002800  58 20 23 26 46 46 0d 20  32 36 33 30 20 20 20 20  |X #&FF. 2630    |
00002810  20 20 20 20 20 54 58 53  20 20 20 20 20 20 20 20  |     TXS        |
00002820  20 20 20 5c 20 52 65 73  65 74 20 73 74 61 63 6b  |   \ Reset stack|
00002830  0d 20 32 36 34 30 20 20  20 20 20 20 20 20 20 4c  |. 2640         L|
00002840  44 41 20 23 28 62 61 73  69 63 2b 64 69 66 66 29  |DA #(basic+diff)|
00002850  20 4d 4f 44 20 32 35 36  0d 20 32 36 35 30 20 20  | MOD 256. 2650  |
00002860  20 20 20 20 20 20 20 53  54 41 20 62 72 65 61 6b  |       STA break|
00002870  76 0d 20 32 36 36 30 20  20 20 20 20 20 20 20 20  |v. 2660         |
00002880  4c 44 41 20 23 28 62 61  73 69 63 2b 64 69 66 66  |LDA #(basic+diff|
00002890  29 20 44 49 56 20 32 35  36 0d 20 32 36 37 30 20  |) DIV 256. 2670 |
000028a0  20 20 20 20 20 20 20 20  53 54 41 20 62 72 65 61  |        STA brea|
000028b0  6b 76 2b 31 0d 20 32 36  38 30 20 20 20 20 20 20  |kv+1. 2680      |
000028c0  20 20 20 4c 44 41 20 23  26 38 44 0d 20 32 36 39  |   LDA #&8D. 269|
000028d0  30 20 20 20 20 20 20 20  20 20 4a 53 52 20 6f 73  |0         JSR os|
000028e0  62 79 74 65 20 20 20 20  5c 20 2a 52 4f 4d 0d 20  |byte    \ *ROM. |
000028f0  32 37 30 30 20 20 20 20  20 20 20 20 20 4c 44 41  |2700         LDA|
00002900  20 23 26 38 42 0d 20 32  37 31 30 20 20 20 20 20  | #&8B. 2710     |
00002910  20 20 20 20 4c 44 58 20  23 31 0d 20 32 37 32 30  |    LDX #1. 2720|
00002920  20 20 20 20 20 20 20 20  20 4c 44 59 20 23 30 0d  |         LDY #0.|
00002930  20 32 37 33 30 20 20 20  20 20 20 20 20 20 4a 53  | 2730         JS|
00002940  52 20 6f 73 62 79 74 65  20 20 20 20 5c 20 2a 4f  |R osbyte    \ *O|
00002950  50 54 31 2c 30 0d 20 32  37 34 30 20 20 20 20 20  |PT1,0. 2740     |
00002960  20 20 20 20 4c 44 41 20  23 26 30 46 0d 20 32 37  |    LDA #&0F. 27|
00002970  35 30 20 20 20 20 20 20  20 20 20 4c 44 58 20 23  |50         LDX #|
00002980  30 0d 20 32 37 36 30 20  20 20 20 20 20 20 20 20  |0. 2760         |
00002990  4a 53 52 20 6f 73 62 79  74 65 20 20 20 20 5c 20  |JSR osbyte    \ |
000029a0  46 6c 75 73 68 20 61 6c  6c 20 62 75 66 66 65 72  |Flush all buffer|
000029b0  73 0d 20 32 37 37 30 20  20 20 20 20 20 20 20 20  |s. 2770         |
000029c0  4c 44 41 20 23 26 46 46  0d 20 32 37 38 30 20 20  |LDA #&FF. 2780  |
000029d0  20 20 20 20 20 20 20 50  48 41 0d 20 32 37 39 30  |       PHA. 2790|
000029e0  20 2e 6b 65 79 62 6f 61  72 64 0d 20 32 38 30 30  | .keyboard. 2800|
000029f0  20 20 20 20 20 20 20 20  20 50 4c 41 0d 20 32 38  |         PLA. 28|
00002a00  31 30 20 20 20 20 20 20  20 20 20 54 41 58 0d 20  |10         TAX. |
00002a10  32 38 32 30 20 20 20 20  20 20 20 20 20 49 4e 58  |2820         INX|
00002a20  0d 20 32 38 33 30 20 20  20 20 20 20 20 20 20 54  |. 2830         T|
00002a30  58 41 0d 20 32 38 34 30  20 20 20 20 20 20 20 20  |XA. 2840        |
00002a40  20 50 48 41 0d 20 32 38  35 30 20 20 20 20 20 20  | PHA. 2850      |
00002a50  20 20 20 4c 44 59 20 72  66 73 63 6f 6d 6d 2b 64  |   LDY rfscomm+d|
00002a60  69 66 66 2c 58 0d 20 32  38 36 30 20 20 20 20 20  |iff,X. 2860     |
00002a70  20 20 20 20 42 45 51 20  65 6e 64 6b 65 79 0d 20  |    BEQ endkey. |
00002a80  32 38 37 30 20 20 20 20  20 20 20 20 20 4c 44 41  |2870         LDA|
00002a90  20 23 26 38 41 0d 20 32  38 38 30 20 20 20 20 20  | #&8A. 2880     |
00002aa0  20 20 20 20 4c 44 58 20  23 30 0d 20 32 38 39 30  |    LDX #0. 2890|
00002ab0  20 20 20 20 20 20 20 20  20 4a 53 52 20 6f 73 62  |         JSR osb|
00002ac0  79 74 65 0d 20 32 39 30  30 20 20 20 20 20 20 20  |yte. 2900       |
00002ad0  20 20 4a 4d 50 20 6b 65  79 62 6f 61 72 64 2b 64  |  JMP keyboard+d|
00002ae0  69 66 66 0d 20 32 39 31  30 20 2e 65 6e 64 6b 65  |iff. 2910 .endke|
00002af0  79 0d 20 32 39 32 30 20  20 20 20 20 20 20 20 20  |y. 2920         |
00002b00  50 4c 41 0d 20 32 39 33  30 20 2e 62 61 73 69 63  |PLA. 2930 .basic|
00002b10  0d 20 32 39 34 30 20 20  20 20 20 20 20 20 20 4c  |. 2940         L|
00002b20  44 41 20 23 26 42 42 0d  20 32 39 35 30 20 20 20  |DA #&BB. 2950   |
00002b30  20 20 20 20 20 20 4c 44  58 20 23 30 0d 20 32 39  |      LDX #0. 29|
00002b40  36 30 20 20 20 20 20 20  20 20 20 4c 44 59 20 23  |60         LDY #|
00002b50  26 46 46 0d 20 32 39 37  30 20 20 20 20 20 20 20  |&FF. 2970       |
00002b60  20 20 4a 53 52 20 6f 73  62 79 74 65 20 20 20 20  |  JSR osbyte    |
00002b70  5c 20 46 69 6e 64 20 42  41 53 49 43 0d 20 32 39  |\ Find BASIC. 29|
00002b80  38 30 20 20 20 20 20 20  20 20 20 4c 44 41 20 23  |80         LDA #|
00002b90  26 38 45 0d 20 32 39 39  30 20 20 20 20 20 20 20  |&8E. 2990       |
00002ba0  20 20 4a 4d 50 20 6f 73  62 79 74 65 20 20 20 20  |  JMP osbyte    |
00002bb0  5c 20 45 6e 74 65 72 20  42 41 53 49 43 0d 20 33  |\ Enter BASIC. 3|
00002bc0  30 30 30 20 2e 72 66 73  63 6f 6d 6d 0d 20 33 30  |000 .rfscomm. 30|
00002bd0  31 30 20 20 20 20 20 20  20 20 20 4f 50 54 20 46  |10         OPT F|
00002be0  4e 65 71 75 73 28 22 43  48 41 49 4e 22 22 44 45  |Nequs("CHAIN""DE|
00002bf0  4d 4f 22 22 22 29 0d 20  33 30 32 30 20 20 20 20  |MO"""). 3020    |
00002c00  20 20 20 20 20 4f 50 54  20 46 4e 65 71 75 62 28  |     OPT FNequb(|
00002c10  26 30 44 29 0d 20 33 30  33 30 20 20 20 20 20 20  |&0D). 3030      |
00002c20  20 20 20 42 52 4b 0d 20  33 30 34 30 20 2e 6c 61  |   BRK. 3040 .la|
00002c30  73 74 62 79 74 65 0d 20  33 30 35 30 20 5d 0d 20  |stbyte. 3050 ]. |
00002c40  33 30 36 30 20 4e 45 58  54 0d 20 33 30 37 30 20  |3060 NEXT. 3070 |
00002c50  4f 25 3d 6c 61 73 74 62  79 74 65 0d 20 33 30 38  |O%=lastbyte. 308|
00002c60  30 20 43 48 41 49 4e 22  52 46 53 47 45 4e 22 0d  |0 CHAIN"RFSGEN".|
00002c70  20 33 30 39 30 20 44 45  46 46 4e 65 71 75 62 28  | 3090 DEFFNequb(|
00002c80  62 79 74 65 29 0d 20 33  31 30 30 20 3f 50 25 3d  |byte). 3100 ?P%=|
00002c90  62 79 74 65 0d 20 33 31  31 30 20 50 25 3d 50 25  |byte. 3110 P%=P%|
00002ca0  2b 31 0d 20 33 31 32 30  20 3d 70 61 73 73 0d 20  |+1. 3120 =pass. |
00002cb0  33 31 33 30 20 44 45 46  46 4e 65 71 75 77 28 77  |3130 DEFFNequw(w|
00002cc0  6f 72 64 29 0d 20 33 31  34 30 20 3f 50 25 3d 77  |ord). 3140 ?P%=w|
00002cd0  6f 72 64 20 4d 4f 44 20  32 35 36 0d 20 33 31 35  |ord MOD 256. 315|
00002ce0  30 20 50 25 3f 31 3d 77  6f 72 64 20 44 49 56 20  |0 P%?1=word DIV |
00002cf0  32 35 36 0d 20 33 31 36  30 20 50 25 3d 50 25 2b  |256. 3160 P%=P%+|
00002d00  32 0d 20 33 31 37 30 20  3d 70 61 73 73 0d 20 33  |2. 3170 =pass. 3|
00002d10  31 38 30 20 44 45 46 46  4e 65 71 75 64 28 64 6f  |180 DEFFNequd(do|
00002d20  75 62 6c 65 29 0d 20 33  31 39 30 20 21 50 25 3d  |uble). 3190 !P%=|
00002d30  64 6f 75 62 6c 65 0d 20  33 32 30 30 20 50 25 3d  |double. 3200 P%=|
00002d40  50 25 2b 34 0d 20 33 32  31 30 20 3d 70 61 73 73  |P%+4. 3210 =pass|
00002d50  0d 20 33 32 32 30 20 44  45 46 46 4e 65 71 75 73  |. 3220 DEFFNequs|
00002d60  28 73 74 72 69 6e 67 24  29 0d 20 33 32 33 30 20  |(string$). 3230 |
00002d70  24 50 25 3d 73 74 72 69  6e 67 24 0d 20 33 32 34  |$P%=string$. 324|
00002d80  30 20 50 25 3d 50 25 2b  4c 45 4e 28 73 74 72 69  |0 P%=P%+LEN(stri|
00002d90  6e 67 24 29 0d 20 33 32  35 30 20 3d 70 61 73 73  |ng$). 3250 =pass|
00002da0  0d                                                |.|
00002da1
09-04-88/T\SWR23.m0
09-04-88/T\SWR23.m1
09-04-88/T\SWR23.m2
09-04-88/T\SWR23.m4
09-04-88/T\SWR23.m5