Home » CEEFAX disks » telesoftware2.adl » Dave/DFS_Backup

Dave/DFS_Backup

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 » telesoftware2.adl
Filename: Dave/DFS_Backup
Read OK:
File size: 0D4C bytes
Load address: FFFF0E00
Exec address: FFFF802B
File contents
   10REM Single Drive Backup of ADFS disc
   20REM By Jon Welch 21/11/87
   30:
   40pauseflag = &81
   50trackflag = &82
   60maxtrackread = 24
   70maxtrack = &80
   80osnewl = &FFE7
   90oswrch = &FFEE
  100oscli  = &FFF7
  110osword = &FFF1
  120osrdch = &FFE0
  130PROCassem(&900)
  140PRINT "Press <SPACE> to save code."
  150REPEAT UNTIL GET = 32
  160A$ = "*SAVE SRCOPY FFFF0900 +"+STR$~(end - &900)
  170PRINT A$
  180OSCLI A$
  190END
  200:
  210DEF PROCassem(M%)
  220FOR pass = 0 TO 3 STEP 3
  230P% = M%
  240[OPT pass
  250ldx #&FF
  260.loop
  270inx
  280lda source,x
  290jsr oswrch
  300bne loop
  310jsr readwrite
  320sta read
  330ldx #&FF
  340.loop1
  350inx
  360lda destn,x
  370jsr oswrch
  380bne loop1
  390jsr readwrite
  400sta save
  410ldx #&FF
  420.loop2
  430inx
  440lda pause,x
  450jsr oswrch
  460bne loop2
  470jsr osrdch
  480jsr oswrch
  490sta pauseflag
  500ldx #&FF
  510.loop3
  520inx
  530lda tracks, x
  540jsr oswrch
  550bne loop3
  560jsr osrdch
  570jsr oswrch
  580cmp #89
  590bne tr40
  600lda #80
  610sta trackflag
  620jmp start
  630.tr40
  640lda #40
  650sta trackflag
  660.start
  670jsr osnewl
  680jsr osnewl
  690lda #maxtrackread
  700sta maxtrack
  710.loop4
  720inc srdata + 7
  730ldx #srdata MOD 256
  740ldy #srdata DIV 255
  750jsr oscli
  760lda srdata + 7
  770cmp #ASC"Z"
  780bne loop4
  790.readgo
  800jsr rpause
  810.readdisc
  820inc read + 7
  830lda #&7F
  840ldx #read MOD 256
  850ldy #read DIV 256
  860jsr osword
  870.shiftup
  880lda #&42
  890ldx #ramup MOD 256
  900ldy #ramup DIV 256
  910jsr osword
  920lda maxtrack
  930cmp read + 7
  940beq savedata
  950clc
  960lda #&A
  970adc ramup + 9
  980sta ramup + 9
  990jmp readdisc
 1000.savedata
 1010jsr spause
 1020.savedisc
 1030lda #&42
 1040ldx #ramdown MOD 256
 1050ldy #ramdown DIV 256
 1060jsr osword
 1070clc
 1080lda #&A
 1090adc ramdown + 9
 1100sta ramdown + 9
 1110.savetodisc
 1120inc save + 7
 1130lda #&7F
 1140ldx #save MOD 256
 1150ldy #save DIV 256
 1160jsr osword
 1170lda &80
 1180cmp save + 7
 1190bne savedisc
 1200lda maxtrack
 1210cmp trackflag
 1220beq bye
 1230clc
 1240lda #maxtrackread
 1250adc maxtrack
 1260cmp trackflag
 1270bcs adjust
 1280sta maxtrack
 1290jmp addrreset
 1300.adjust
 1310lda trackflag
 1320sta maxtrack
 1330.addrreset
 1340lda #0
 1350sta ramup + 9
 1360sta ramdown + 9
 1370jmp readgo
 1380.readwrite
 1390jsr osrdch
 1400jsr oswrch
 1410sec
 1420sbc #48
 1430rts
 1440.rpause
 1450ldx #&FF
 1460lda pauseflag
 1470cmp #78
 1480bne loop5
 1490rts
 1500.loop5
 1510inx
 1520lda source1, x
 1530jsr oswrch
 1540bne loop5
 1550jsr osrdch
 1560rts
 1570.spause
 1580ldx #&FF
 1590lda pauseflag
 1600cmp #78
 1610bne loop6
 1620rts
 1630.loop6
 1640inx
 1650lda destn1, x
 1660jsr oswrch
 1670bne loop6
 1680jsr osrdch
 1690rts
 1700.bye
 1710rts
 1720.read
 1730equd &00190000
 1740equd &FF530300
 1750equb 0
 1760equb 42
 1770equb 0
 1780.srdata
 1790equs "SRDATA "
 1800equb 86
 1810equb 13
 1820.ramup
 1830equd &001900C0
 1840equd &000A0000
 1850equb 0
 1860equb 0
 1870.ramdown
 1880equd &00190040
 1890equd &000A0000
 1900equb 0
 1910equb 0
 1920.save
 1930equd &00190000
 1940equd &FF4B0300
 1950equb 0
 1960equb 42
 1970equb 0
 1980.source
 1990equb 12
 2000equb 13
 2010equs "Sideways Ram Disc Copier by Jon Welch"
 2020equb 13
 2030equb 10
 2040equb 10
 2050equs "Enter source drive             : "
 2060equb 0
 2070.destn
 2080equb 13
 2090equb 10
 2100equs "Enter destination drive        : "
 2110equb 0
 2120.pause
 2130equb 13
 2140equb 10
 2150equs "Pause between read / write Y/N : "
 2160equb 0
 2170.tracks
 2180equb 13
 2190equb 10
 2200equs "Is it 80 track Y/N             : "
 2210equb 0
 2220.source1
 2230equb 7
 2240equs "Insert source disc and press a key."
 2250equb 13
 2260equb 0
 2270.destn1
 2280equb 7
 2290equs "Insert destination disc and press a key."
 2300equb 13
 2310equb 0
 2320.end
 2330]
 2340NEXT
 2350ENDPROC

&� Single Drive Backup of ADFS disc
� By Jon Welch 21/11/87
:
(pauseflag = &81
2trackflag = &82
<maxtrackread = 24
Fmaxtrack = &80
Posnewl = &FFE7
Zoswrch = &FFEE
doscli  = &FFF7
nosword = &FFF1
xosrdch = &FFE0
��assem(&900)
�#� "Press <SPACE> to save code."
�� � � = 32
�1A$ = "*SAVE SRCOPY FFFF0900 +"+�~(end - &900)
�� A$
�� A$
��
�:
�� �assem(M%)
�� pass = 0 � 3 � 3
�P% = M%
�
[OPT pass
�ldx #&FF
	.loop
inx
lda source,x
"jsr oswrch
,bne loop
6jsr readwrite
@sta read
Jldx #&FF
T
.loop1
^inx
hlda destn,x
rjsr oswrch
|
bne loop1
�jsr readwrite
�sta save
�ldx #&FF
�
.loop2
�inx
�lda pause,x
�jsr oswrch
�
bne loop2
�jsr osrdch
�jsr oswrch
�sta pauseflag
�ldx #&FF
�
.loop3
inx
lda tracks, x
jsr oswrch
&
bne loop3
0jsr osrdch
:jsr oswrch
Dcmp #89
Nbne tr40
Xlda #80
bsta trackflag
l
jmp start
v	.tr40
�lda #40
�sta trackflag
�
.start
�jsr osnewl
�jsr osnewl
�lda #maxtrackread
�sta maxtrack
�
.loop4
�inc srdata + 7
�ldx #srdata � 256
�ldy #srdata � 255
�
jsr oscli
�lda srdata + 7

cmp #�"Z"

bne loop4
.readgo
 jsr rpause
*
.readdisc
4inc read + 7
>lda #&7F
Hldx #read � 256
Rldy #read � 256
\jsr osword
f.shiftup
plda #&42
zldx #ramup � 256
�ldy #ramup � 256
�jsr osword
�lda maxtrack
�cmp read + 7
�beq savedata
�clc
�lda #&A
�adc ramup + 9
�sta ramup + 9
�jmp readdisc
�
.savedata
�jsr spause
�
.savedisc
lda #&42
ldx #ramdown � 256
ldy #ramdown � 256
$jsr osword
.clc
8lda #&A
Badc ramdown + 9
Lsta ramdown + 9
V.savetodisc
`inc save + 7
jlda #&7F
tldx #save � 256
~ldy #save � 256
�jsr osword
�lda &80
�cmp save + 7
�bne savedisc
�lda maxtrack
�cmp trackflag
�beq bye
�clc
�lda #maxtrackread
�adc maxtrack
�cmp trackflag
�bcs adjust
sta maxtrack

jmp addrreset
.adjust
lda trackflag
(sta maxtrack
2.addrreset
<
lda #0
Fsta ramup + 9
Psta ramdown + 9
Zjmp readgo
d.readwrite
njsr osrdch
xjsr oswrch
�sec
�sbc #48
�rts
�.rpause
�ldx #&FF
�lda pauseflag
�cmp #78
�
bne loop5
�rts
�
.loop5
�inx
�lda source1, x
�jsr oswrch

bne loop5
jsr osrdch
rts
".spause
,ldx #&FF
6lda pauseflag
@cmp #78
J
bne loop6
Trts
^
.loop6
hinx
rlda destn1, x
|jsr oswrch
�
bne loop6
�jsr osrdch
�rts
�.bye
�rts
�	.read
�equd &00190000
�equd &FF530300
�
equb 0
�equb 42
�
equb 0
�.srdata
�equs "SRDATA "
equb 86
equb 13

.ramup
&equd &001900C0
0equd &000A0000
:
equb 0
D
equb 0
N.ramdown
Xequd &00190040
bequd &000A0000
l
equb 0
v
equb 0
�	.save
�equd &00190000
�equd &FF4B0300
�
equb 0
�equb 42
�
equb 0
�.source
�equb 12
�equb 13
�0equs "Sideways Ram Disc Copier by Jon Welch"
�equb 13
�equb 10
�equb 10
,equs "Enter source drive             : "

equb 0

.destn
 equb 13
*equb 10
4,equs "Enter destination drive        : "
>
equb 0
H
.pause
Requb 13
\equb 10
f,equs "Pause between read / write Y/N : "
p
equb 0
z.tracks
�equb 13
�equb 10
�,equs "Is it 80 track Y/N             : "
�
equb 0
�.source1
�
equb 7
�.equs "Insert source disc and press a key."
�equb 13
�
equb 0
�.destn1
�
equb 7
�3equs "Insert destination disc and press a key."
�equb 13
	
equb 0
	.end
	]
	$�
	.�
�
00000000  0d 00 0a 26 f4 20 53 69  6e 67 6c 65 20 44 72 69  |...&. Single Dri|
00000010  76 65 20 42 61 63 6b 75  70 20 6f 66 20 41 44 46  |ve Backup of ADF|
00000020  53 20 64 69 73 63 0d 00  14 1b f4 20 42 79 20 4a  |S disc..... By J|
00000030  6f 6e 20 57 65 6c 63 68  20 32 31 2f 31 31 2f 38  |on Welch 21/11/8|
00000040  37 0d 00 1e 05 3a 0d 00  28 13 70 61 75 73 65 66  |7....:..(.pausef|
00000050  6c 61 67 20 3d 20 26 38  31 0d 00 32 13 74 72 61  |lag = &81..2.tra|
00000060  63 6b 66 6c 61 67 20 3d  20 26 38 32 0d 00 3c 15  |ckflag = &82..<.|
00000070  6d 61 78 74 72 61 63 6b  72 65 61 64 20 3d 20 32  |maxtrackread = 2|
00000080  34 0d 00 46 12 6d 61 78  74 72 61 63 6b 20 3d 20  |4..F.maxtrack = |
00000090  26 38 30 0d 00 50 12 6f  73 6e 65 77 6c 20 3d 20  |&80..P.osnewl = |
000000a0  26 46 46 45 37 0d 00 5a  12 6f 73 77 72 63 68 20  |&FFE7..Z.oswrch |
000000b0  3d 20 26 46 46 45 45 0d  00 64 12 6f 73 63 6c 69  |= &FFEE..d.oscli|
000000c0  20 20 3d 20 26 46 46 46  37 0d 00 6e 12 6f 73 77  |  = &FFF7..n.osw|
000000d0  6f 72 64 20 3d 20 26 46  46 46 31 0d 00 78 12 6f  |ord = &FFF1..x.o|
000000e0  73 72 64 63 68 20 3d 20  26 46 46 45 30 0d 00 82  |srdch = &FFE0...|
000000f0  10 f2 61 73 73 65 6d 28  26 39 30 30 29 0d 00 8c  |..assem(&900)...|
00000100  23 f1 20 22 50 72 65 73  73 20 3c 53 50 41 43 45  |#. "Press <SPACE|
00000110  3e 20 74 6f 20 73 61 76  65 20 63 6f 64 65 2e 22  |> to save code."|
00000120  0d 00 96 0e f5 20 fd 20  a5 20 3d 20 33 32 0d 00  |..... . . = 32..|
00000130  a0 31 41 24 20 3d 20 22  2a 53 41 56 45 20 53 52  |.1A$ = "*SAVE SR|
00000140  43 4f 50 59 20 46 46 46  46 30 39 30 30 20 2b 22  |COPY FFFF0900 +"|
00000150  2b c3 7e 28 65 6e 64 20  2d 20 26 39 30 30 29 0d  |+.~(end - &900).|
00000160  00 aa 08 f1 20 41 24 0d  00 b4 08 ff 20 41 24 0d  |.... A$..... A$.|
00000170  00 be 05 e0 0d 00 c8 05  3a 0d 00 d2 10 dd 20 f2  |........:..... .|
00000180  61 73 73 65 6d 28 4d 25  29 0d 00 dc 16 e3 20 70  |assem(M%)..... p|
00000190  61 73 73 20 3d 20 30 20  b8 20 33 20 88 20 33 0d  |ass = 0 . 3 . 3.|
000001a0  00 e6 0b 50 25 20 3d 20  4d 25 0d 00 f0 0d 5b 4f  |...P% = M%....[O|
000001b0  50 54 20 70 61 73 73 0d  00 fa 0c 6c 64 78 20 23  |PT pass....ldx #|
000001c0  26 46 46 0d 01 04 09 2e  6c 6f 6f 70 0d 01 0e 07  |&FF.....loop....|
000001d0  69 6e 78 0d 01 18 10 6c  64 61 20 73 6f 75 72 63  |inx....lda sourc|
000001e0  65 2c 78 0d 01 22 0e 6a  73 72 20 6f 73 77 72 63  |e,x..".jsr oswrc|
000001f0  68 0d 01 2c 0c 62 6e 65  20 6c 6f 6f 70 0d 01 36  |h..,.bne loop..6|
00000200  11 6a 73 72 20 72 65 61  64 77 72 69 74 65 0d 01  |.jsr readwrite..|
00000210  40 0c 73 74 61 20 72 65  61 64 0d 01 4a 0c 6c 64  |@.sta read..J.ld|
00000220  78 20 23 26 46 46 0d 01  54 0a 2e 6c 6f 6f 70 31  |x #&FF..T..loop1|
00000230  0d 01 5e 07 69 6e 78 0d  01 68 0f 6c 64 61 20 64  |..^.inx..h.lda d|
00000240  65 73 74 6e 2c 78 0d 01  72 0e 6a 73 72 20 6f 73  |estn,x..r.jsr os|
00000250  77 72 63 68 0d 01 7c 0d  62 6e 65 20 6c 6f 6f 70  |wrch..|.bne loop|
00000260  31 0d 01 86 11 6a 73 72  20 72 65 61 64 77 72 69  |1....jsr readwri|
00000270  74 65 0d 01 90 0c 73 74  61 20 73 61 76 65 0d 01  |te....sta save..|
00000280  9a 0c 6c 64 78 20 23 26  46 46 0d 01 a4 0a 2e 6c  |..ldx #&FF.....l|
00000290  6f 6f 70 32 0d 01 ae 07  69 6e 78 0d 01 b8 0f 6c  |oop2....inx....l|
000002a0  64 61 20 70 61 75 73 65  2c 78 0d 01 c2 0e 6a 73  |da pause,x....js|
000002b0  72 20 6f 73 77 72 63 68  0d 01 cc 0d 62 6e 65 20  |r oswrch....bne |
000002c0  6c 6f 6f 70 32 0d 01 d6  0e 6a 73 72 20 6f 73 72  |loop2....jsr osr|
000002d0  64 63 68 0d 01 e0 0e 6a  73 72 20 6f 73 77 72 63  |dch....jsr oswrc|
000002e0  68 0d 01 ea 11 73 74 61  20 70 61 75 73 65 66 6c  |h....sta pausefl|
000002f0  61 67 0d 01 f4 0c 6c 64  78 20 23 26 46 46 0d 01  |ag....ldx #&FF..|
00000300  fe 0a 2e 6c 6f 6f 70 33  0d 02 08 07 69 6e 78 0d  |...loop3....inx.|
00000310  02 12 11 6c 64 61 20 74  72 61 63 6b 73 2c 20 78  |...lda tracks, x|
00000320  0d 02 1c 0e 6a 73 72 20  6f 73 77 72 63 68 0d 02  |....jsr oswrch..|
00000330  26 0d 62 6e 65 20 6c 6f  6f 70 33 0d 02 30 0e 6a  |&.bne loop3..0.j|
00000340  73 72 20 6f 73 72 64 63  68 0d 02 3a 0e 6a 73 72  |sr osrdch..:.jsr|
00000350  20 6f 73 77 72 63 68 0d  02 44 0b 63 6d 70 20 23  | oswrch..D.cmp #|
00000360  38 39 0d 02 4e 0c 62 6e  65 20 74 72 34 30 0d 02  |89..N.bne tr40..|
00000370  58 0b 6c 64 61 20 23 38  30 0d 02 62 11 73 74 61  |X.lda #80..b.sta|
00000380  20 74 72 61 63 6b 66 6c  61 67 0d 02 6c 0d 6a 6d  | trackflag..l.jm|
00000390  70 20 73 74 61 72 74 0d  02 76 09 2e 74 72 34 30  |p start..v..tr40|
000003a0  0d 02 80 0b 6c 64 61 20  23 34 30 0d 02 8a 11 73  |....lda #40....s|
000003b0  74 61 20 74 72 61 63 6b  66 6c 61 67 0d 02 94 0a  |ta trackflag....|
000003c0  2e 73 74 61 72 74 0d 02  9e 0e 6a 73 72 20 6f 73  |.start....jsr os|
000003d0  6e 65 77 6c 0d 02 a8 0e  6a 73 72 20 6f 73 6e 65  |newl....jsr osne|
000003e0  77 6c 0d 02 b2 15 6c 64  61 20 23 6d 61 78 74 72  |wl....lda #maxtr|
000003f0  61 63 6b 72 65 61 64 0d  02 bc 10 73 74 61 20 6d  |ackread....sta m|
00000400  61 78 74 72 61 63 6b 0d  02 c6 0a 2e 6c 6f 6f 70  |axtrack.....loop|
00000410  34 0d 02 d0 12 69 6e 63  20 73 72 64 61 74 61 20  |4....inc srdata |
00000420  2b 20 37 0d 02 da 15 6c  64 78 20 23 73 72 64 61  |+ 7....ldx #srda|
00000430  74 61 20 83 20 32 35 36  0d 02 e4 15 6c 64 79 20  |ta . 256....ldy |
00000440  23 73 72 64 61 74 61 20  81 20 32 35 35 0d 02 ee  |#srdata . 255...|
00000450  0d 6a 73 72 20 6f 73 63  6c 69 0d 02 f8 12 6c 64  |.jsr oscli....ld|
00000460  61 20 73 72 64 61 74 61  20 2b 20 37 0d 03 02 0d  |a srdata + 7....|
00000470  63 6d 70 20 23 97 22 5a  22 0d 03 0c 0d 62 6e 65  |cmp #."Z"....bne|
00000480  20 6c 6f 6f 70 34 0d 03  16 0b 2e 72 65 61 64 67  | loop4.....readg|
00000490  6f 0d 03 20 0e 6a 73 72  20 72 70 61 75 73 65 0d  |o.. .jsr rpause.|
000004a0  03 2a 0d 2e 72 65 61 64  64 69 73 63 0d 03 34 10  |.*..readdisc..4.|
000004b0  69 6e 63 20 72 65 61 64  20 2b 20 37 0d 03 3e 0c  |inc read + 7..>.|
000004c0  6c 64 61 20 23 26 37 46  0d 03 48 13 6c 64 78 20  |lda #&7F..H.ldx |
000004d0  23 72 65 61 64 20 83 20  32 35 36 0d 03 52 13 6c  |#read . 256..R.l|
000004e0  64 79 20 23 72 65 61 64  20 81 20 32 35 36 0d 03  |dy #read . 256..|
000004f0  5c 0e 6a 73 72 20 6f 73  77 6f 72 64 0d 03 66 0c  |\.jsr osword..f.|
00000500  2e 73 68 69 66 74 75 70  0d 03 70 0c 6c 64 61 20  |.shiftup..p.lda |
00000510  23 26 34 32 0d 03 7a 14  6c 64 78 20 23 72 61 6d  |#&42..z.ldx #ram|
00000520  75 70 20 83 20 32 35 36  0d 03 84 14 6c 64 79 20  |up . 256....ldy |
00000530  23 72 61 6d 75 70 20 81  20 32 35 36 0d 03 8e 0e  |#ramup . 256....|
00000540  6a 73 72 20 6f 73 77 6f  72 64 0d 03 98 10 6c 64  |jsr osword....ld|
00000550  61 20 6d 61 78 74 72 61  63 6b 0d 03 a2 10 63 6d  |a maxtrack....cm|
00000560  70 20 72 65 61 64 20 2b  20 37 0d 03 ac 10 62 65  |p read + 7....be|
00000570  71 20 73 61 76 65 64 61  74 61 0d 03 b6 07 63 6c  |q savedata....cl|
00000580  63 0d 03 c0 0b 6c 64 61  20 23 26 41 0d 03 ca 11  |c....lda #&A....|
00000590  61 64 63 20 72 61 6d 75  70 20 2b 20 39 0d 03 d4  |adc ramup + 9...|
000005a0  11 73 74 61 20 72 61 6d  75 70 20 2b 20 39 0d 03  |.sta ramup + 9..|
000005b0  de 10 6a 6d 70 20 72 65  61 64 64 69 73 63 0d 03  |..jmp readdisc..|
000005c0  e8 0d 2e 73 61 76 65 64  61 74 61 0d 03 f2 0e 6a  |...savedata....j|
000005d0  73 72 20 73 70 61 75 73  65 0d 03 fc 0d 2e 73 61  |sr spause.....sa|
000005e0  76 65 64 69 73 63 0d 04  06 0c 6c 64 61 20 23 26  |vedisc....lda #&|
000005f0  34 32 0d 04 10 16 6c 64  78 20 23 72 61 6d 64 6f  |42....ldx #ramdo|
00000600  77 6e 20 83 20 32 35 36  0d 04 1a 16 6c 64 79 20  |wn . 256....ldy |
00000610  23 72 61 6d 64 6f 77 6e  20 81 20 32 35 36 0d 04  |#ramdown . 256..|
00000620  24 0e 6a 73 72 20 6f 73  77 6f 72 64 0d 04 2e 07  |$.jsr osword....|
00000630  63 6c 63 0d 04 38 0b 6c  64 61 20 23 26 41 0d 04  |clc..8.lda #&A..|
00000640  42 13 61 64 63 20 72 61  6d 64 6f 77 6e 20 2b 20  |B.adc ramdown + |
00000650  39 0d 04 4c 13 73 74 61  20 72 61 6d 64 6f 77 6e  |9..L.sta ramdown|
00000660  20 2b 20 39 0d 04 56 0f  2e 73 61 76 65 74 6f 64  | + 9..V..savetod|
00000670  69 73 63 0d 04 60 10 69  6e 63 20 73 61 76 65 20  |isc..`.inc save |
00000680  2b 20 37 0d 04 6a 0c 6c  64 61 20 23 26 37 46 0d  |+ 7..j.lda #&7F.|
00000690  04 74 13 6c 64 78 20 23  73 61 76 65 20 83 20 32  |.t.ldx #save . 2|
000006a0  35 36 0d 04 7e 13 6c 64  79 20 23 73 61 76 65 20  |56..~.ldy #save |
000006b0  81 20 32 35 36 0d 04 88  0e 6a 73 72 20 6f 73 77  |. 256....jsr osw|
000006c0  6f 72 64 0d 04 92 0b 6c  64 61 20 26 38 30 0d 04  |ord....lda &80..|
000006d0  9c 10 63 6d 70 20 73 61  76 65 20 2b 20 37 0d 04  |..cmp save + 7..|
000006e0  a6 10 62 6e 65 20 73 61  76 65 64 69 73 63 0d 04  |..bne savedisc..|
000006f0  b0 10 6c 64 61 20 6d 61  78 74 72 61 63 6b 0d 04  |..lda maxtrack..|
00000700  ba 11 63 6d 70 20 74 72  61 63 6b 66 6c 61 67 0d  |..cmp trackflag.|
00000710  04 c4 0b 62 65 71 20 62  79 65 0d 04 ce 07 63 6c  |...beq bye....cl|
00000720  63 0d 04 d8 15 6c 64 61  20 23 6d 61 78 74 72 61  |c....lda #maxtra|
00000730  63 6b 72 65 61 64 0d 04  e2 10 61 64 63 20 6d 61  |ckread....adc ma|
00000740  78 74 72 61 63 6b 0d 04  ec 11 63 6d 70 20 74 72  |xtrack....cmp tr|
00000750  61 63 6b 66 6c 61 67 0d  04 f6 0e 62 63 73 20 61  |ackflag....bcs a|
00000760  64 6a 75 73 74 0d 05 00  10 73 74 61 20 6d 61 78  |djust....sta max|
00000770  74 72 61 63 6b 0d 05 0a  11 6a 6d 70 20 61 64 64  |track....jmp add|
00000780  72 72 65 73 65 74 0d 05  14 0b 2e 61 64 6a 75 73  |rreset.....adjus|
00000790  74 0d 05 1e 11 6c 64 61  20 74 72 61 63 6b 66 6c  |t....lda trackfl|
000007a0  61 67 0d 05 28 10 73 74  61 20 6d 61 78 74 72 61  |ag..(.sta maxtra|
000007b0  63 6b 0d 05 32 0e 2e 61  64 64 72 72 65 73 65 74  |ck..2..addrreset|
000007c0  0d 05 3c 0a 6c 64 61 20  23 30 0d 05 46 11 73 74  |..<.lda #0..F.st|
000007d0  61 20 72 61 6d 75 70 20  2b 20 39 0d 05 50 13 73  |a ramup + 9..P.s|
000007e0  74 61 20 72 61 6d 64 6f  77 6e 20 2b 20 39 0d 05  |ta ramdown + 9..|
000007f0  5a 0e 6a 6d 70 20 72 65  61 64 67 6f 0d 05 64 0e  |Z.jmp readgo..d.|
00000800  2e 72 65 61 64 77 72 69  74 65 0d 05 6e 0e 6a 73  |.readwrite..n.js|
00000810  72 20 6f 73 72 64 63 68  0d 05 78 0e 6a 73 72 20  |r osrdch..x.jsr |
00000820  6f 73 77 72 63 68 0d 05  82 07 73 65 63 0d 05 8c  |oswrch....sec...|
00000830  0b 73 62 63 20 23 34 38  0d 05 96 07 72 74 73 0d  |.sbc #48....rts.|
00000840  05 a0 0b 2e 72 70 61 75  73 65 0d 05 aa 0c 6c 64  |....rpause....ld|
00000850  78 20 23 26 46 46 0d 05  b4 11 6c 64 61 20 70 61  |x #&FF....lda pa|
00000860  75 73 65 66 6c 61 67 0d  05 be 0b 63 6d 70 20 23  |useflag....cmp #|
00000870  37 38 0d 05 c8 0d 62 6e  65 20 6c 6f 6f 70 35 0d  |78....bne loop5.|
00000880  05 d2 07 72 74 73 0d 05  dc 0a 2e 6c 6f 6f 70 35  |...rts.....loop5|
00000890  0d 05 e6 07 69 6e 78 0d  05 f0 12 6c 64 61 20 73  |....inx....lda s|
000008a0  6f 75 72 63 65 31 2c 20  78 0d 05 fa 0e 6a 73 72  |ource1, x....jsr|
000008b0  20 6f 73 77 72 63 68 0d  06 04 0d 62 6e 65 20 6c  | oswrch....bne l|
000008c0  6f 6f 70 35 0d 06 0e 0e  6a 73 72 20 6f 73 72 64  |oop5....jsr osrd|
000008d0  63 68 0d 06 18 07 72 74  73 0d 06 22 0b 2e 73 70  |ch....rts.."..sp|
000008e0  61 75 73 65 0d 06 2c 0c  6c 64 78 20 23 26 46 46  |ause..,.ldx #&FF|
000008f0  0d 06 36 11 6c 64 61 20  70 61 75 73 65 66 6c 61  |..6.lda pausefla|
00000900  67 0d 06 40 0b 63 6d 70  20 23 37 38 0d 06 4a 0d  |g..@.cmp #78..J.|
00000910  62 6e 65 20 6c 6f 6f 70  36 0d 06 54 07 72 74 73  |bne loop6..T.rts|
00000920  0d 06 5e 0a 2e 6c 6f 6f  70 36 0d 06 68 07 69 6e  |..^..loop6..h.in|
00000930  78 0d 06 72 11 6c 64 61  20 64 65 73 74 6e 31 2c  |x..r.lda destn1,|
00000940  20 78 0d 06 7c 0e 6a 73  72 20 6f 73 77 72 63 68  | x..|.jsr oswrch|
00000950  0d 06 86 0d 62 6e 65 20  6c 6f 6f 70 36 0d 06 90  |....bne loop6...|
00000960  0e 6a 73 72 20 6f 73 72  64 63 68 0d 06 9a 07 72  |.jsr osrdch....r|
00000970  74 73 0d 06 a4 08 2e 62  79 65 0d 06 ae 07 72 74  |ts.....bye....rt|
00000980  73 0d 06 b8 09 2e 72 65  61 64 0d 06 c2 12 65 71  |s.....read....eq|
00000990  75 64 20 26 30 30 31 39  30 30 30 30 0d 06 cc 12  |ud &00190000....|
000009a0  65 71 75 64 20 26 46 46  35 33 30 33 30 30 0d 06  |equd &FF530300..|
000009b0  d6 0a 65 71 75 62 20 30  0d 06 e0 0b 65 71 75 62  |..equb 0....equb|
000009c0  20 34 32 0d 06 ea 0a 65  71 75 62 20 30 0d 06 f4  | 42....equb 0...|
000009d0  0b 2e 73 72 64 61 74 61  0d 06 fe 12 65 71 75 73  |..srdata....equs|
000009e0  20 22 53 52 44 41 54 41  20 22 0d 07 08 0b 65 71  | "SRDATA "....eq|
000009f0  75 62 20 38 36 0d 07 12  0b 65 71 75 62 20 31 33  |ub 86....equb 13|
00000a00  0d 07 1c 0a 2e 72 61 6d  75 70 0d 07 26 12 65 71  |.....ramup..&.eq|
00000a10  75 64 20 26 30 30 31 39  30 30 43 30 0d 07 30 12  |ud &001900C0..0.|
00000a20  65 71 75 64 20 26 30 30  30 41 30 30 30 30 0d 07  |equd &000A0000..|
00000a30  3a 0a 65 71 75 62 20 30  0d 07 44 0a 65 71 75 62  |:.equb 0..D.equb|
00000a40  20 30 0d 07 4e 0c 2e 72  61 6d 64 6f 77 6e 0d 07  | 0..N..ramdown..|
00000a50  58 12 65 71 75 64 20 26  30 30 31 39 30 30 34 30  |X.equd &00190040|
00000a60  0d 07 62 12 65 71 75 64  20 26 30 30 30 41 30 30  |..b.equd &000A00|
00000a70  30 30 0d 07 6c 0a 65 71  75 62 20 30 0d 07 76 0a  |00..l.equb 0..v.|
00000a80  65 71 75 62 20 30 0d 07  80 09 2e 73 61 76 65 0d  |equb 0.....save.|
00000a90  07 8a 12 65 71 75 64 20  26 30 30 31 39 30 30 30  |...equd &0019000|
00000aa0  30 0d 07 94 12 65 71 75  64 20 26 46 46 34 42 30  |0....equd &FF4B0|
00000ab0  33 30 30 0d 07 9e 0a 65  71 75 62 20 30 0d 07 a8  |300....equb 0...|
00000ac0  0b 65 71 75 62 20 34 32  0d 07 b2 0a 65 71 75 62  |.equb 42....equb|
00000ad0  20 30 0d 07 bc 0b 2e 73  6f 75 72 63 65 0d 07 c6  | 0.....source...|
00000ae0  0b 65 71 75 62 20 31 32  0d 07 d0 0b 65 71 75 62  |.equb 12....equb|
00000af0  20 31 33 0d 07 da 30 65  71 75 73 20 22 53 69 64  | 13...0equs "Sid|
00000b00  65 77 61 79 73 20 52 61  6d 20 44 69 73 63 20 43  |eways Ram Disc C|
00000b10  6f 70 69 65 72 20 62 79  20 4a 6f 6e 20 57 65 6c  |opier by Jon Wel|
00000b20  63 68 22 0d 07 e4 0b 65  71 75 62 20 31 33 0d 07  |ch"....equb 13..|
00000b30  ee 0b 65 71 75 62 20 31  30 0d 07 f8 0b 65 71 75  |..equb 10....equ|
00000b40  62 20 31 30 0d 08 02 2c  65 71 75 73 20 22 45 6e  |b 10...,equs "En|
00000b50  74 65 72 20 73 6f 75 72  63 65 20 64 72 69 76 65  |ter source drive|
00000b60  20 20 20 20 20 20 20 20  20 20 20 20 20 3a 20 22  |             : "|
00000b70  0d 08 0c 0a 65 71 75 62  20 30 0d 08 16 0a 2e 64  |....equb 0.....d|
00000b80  65 73 74 6e 0d 08 20 0b  65 71 75 62 20 31 33 0d  |estn.. .equb 13.|
00000b90  08 2a 0b 65 71 75 62 20  31 30 0d 08 34 2c 65 71  |.*.equb 10..4,eq|
00000ba0  75 73 20 22 45 6e 74 65  72 20 64 65 73 74 69 6e  |us "Enter destin|
00000bb0  61 74 69 6f 6e 20 64 72  69 76 65 20 20 20 20 20  |ation drive     |
00000bc0  20 20 20 3a 20 22 0d 08  3e 0a 65 71 75 62 20 30  |   : "..>.equb 0|
00000bd0  0d 08 48 0a 2e 70 61 75  73 65 0d 08 52 0b 65 71  |..H..pause..R.eq|
00000be0  75 62 20 31 33 0d 08 5c  0b 65 71 75 62 20 31 30  |ub 13..\.equb 10|
00000bf0  0d 08 66 2c 65 71 75 73  20 22 50 61 75 73 65 20  |..f,equs "Pause |
00000c00  62 65 74 77 65 65 6e 20  72 65 61 64 20 2f 20 77  |between read / w|
00000c10  72 69 74 65 20 59 2f 4e  20 3a 20 22 0d 08 70 0a  |rite Y/N : "..p.|
00000c20  65 71 75 62 20 30 0d 08  7a 0b 2e 74 72 61 63 6b  |equb 0..z..track|
00000c30  73 0d 08 84 0b 65 71 75  62 20 31 33 0d 08 8e 0b  |s....equb 13....|
00000c40  65 71 75 62 20 31 30 0d  08 98 2c 65 71 75 73 20  |equb 10...,equs |
00000c50  22 49 73 20 69 74 20 38  30 20 74 72 61 63 6b 20  |"Is it 80 track |
00000c60  59 2f 4e 20 20 20 20 20  20 20 20 20 20 20 20 20  |Y/N             |
00000c70  3a 20 22 0d 08 a2 0a 65  71 75 62 20 30 0d 08 ac  |: "....equb 0...|
00000c80  0c 2e 73 6f 75 72 63 65  31 0d 08 b6 0a 65 71 75  |..source1....equ|
00000c90  62 20 37 0d 08 c0 2e 65  71 75 73 20 22 49 6e 73  |b 7....equs "Ins|
00000ca0  65 72 74 20 73 6f 75 72  63 65 20 64 69 73 63 20  |ert source disc |
00000cb0  61 6e 64 20 70 72 65 73  73 20 61 20 6b 65 79 2e  |and press a key.|
00000cc0  22 0d 08 ca 0b 65 71 75  62 20 31 33 0d 08 d4 0a  |"....equb 13....|
00000cd0  65 71 75 62 20 30 0d 08  de 0b 2e 64 65 73 74 6e  |equb 0.....destn|
00000ce0  31 0d 08 e8 0a 65 71 75  62 20 37 0d 08 f2 33 65  |1....equb 7...3e|
00000cf0  71 75 73 20 22 49 6e 73  65 72 74 20 64 65 73 74  |qus "Insert dest|
00000d00  69 6e 61 74 69 6f 6e 20  64 69 73 63 20 61 6e 64  |ination disc and|
00000d10  20 70 72 65 73 73 20 61  20 6b 65 79 2e 22 0d 08  | press a key."..|
00000d20  fc 0b 65 71 75 62 20 31  33 0d 09 06 0a 65 71 75  |..equb 13....equ|
00000d30  62 20 30 0d 09 10 08 2e  65 6e 64 0d 09 1a 05 5d  |b 0.....end....]|
00000d40  0d 09 24 05 ed 0d 09 2e  05 e1 0d ff              |..$.........|
00000d4c
Dave/DFS_Backup.m0
Dave/DFS_Backup.m1
Dave/DFS_Backup.m2
Dave/DFS_Backup.m4
Dave/DFS_Backup.m5