**************** ***************** LIKBEZ
(C) P. Yu Fedin
FULL DESCRIPTION + FULL ROM Disassembler
TR-DOS 5.04T (5.03)
For professionals
And as for those
WHO WANTS TO BE.
continued
Address 5201. Copying a file on one drive.
Place the file descriptor in the 23773 and its part in
23789 and 23793, set, 23841, 23843 and 23759. Sub-sets 23739,
23769, 23770 and 23698.
5201 LD A, (23793), all copied?
OR A
RET Z; if so, return
LD A, (23841), the first pass?
OR A
JR NZ, 5231, if so, the disc - the source is
in drive
CALL 7575; clear screen
LD HL, 10154; print INSERT SOURCE DISC
CALL 9991
5221 CALL 4178; waiting for the keys Y
CP "Y"
JR NZ, 5211
CALL 7583; cleaning the bottom of the screen
5231 LD A, (23793), all copied?
OR A
RET Z; if so, return
PUSH HL; conservation HL
LD HL, 23843; copy of the file
SUB (HL)
POP HL; recovery HL
JR NC, 5323, if not the end, then copies
Xia part of the file
LD A, (23793), copy the rest
LD B, A
XOR A; copied all
LD (23793), A
5252 PUSH BC; preservation of copying
Mykh sectors
LD (23758), A; zeroing 23758
LD HL, (23759) take the address of the working space
properties
PUSH HL; save it
LD DE, (23794) take the address of the copied area
Disk
CALL 5336, setting a floppy disk
source
CALL 7741; boot sectors
LD HL, (23796), setting the address on the disk following
blowing sector
LD (23794), HL
CALL 7575; clear screen
LD HL, 10119; print INSERT DESTINATION DISC
CALL 9991
5285 CALL 4178; waiting for the keys Y
CP "Y"
JR NZ, 5286
CALL 7583; cleaning the bottom of the screen
LD A, (23841), the first pass?
OR A
CALL NZ, 5123, and if so, then check if
Disk Space
POP HL; restoration work addresses
Space
POP BC; and the number of copied sectors
ditch
LD DE, (23787) take the address of the current plot
Disk
CALL 5348, setting a floppy disk
receiver
CALL 7757; recording sectors
LD HL, (23797), setting the address on the disk following
blowing sector
LD (23787), HL
JP 5201; repeat
5323 LD (23793), A; setting the length of the remaining hour
Tu file
PUSH HL; conservation HL
LD HL, 23843; take the length of the workspace
LD B, (HL)
POP HL; recovery HL
XOR A; reset battery
JP 5252; Up
Address 5336. Putting the values of 23,769 in a variable
mode drive. Set 23769.
5336 PUSH HL; conservation DE and HL
PUSH DE
CALL 15889; take the address of a variable of type
drive
LD A, (23769) take the drive type from 23 769
LD (HL), A; plant type drive
POP DE; restoration DE and HL
POP HL
RET; Returns
Address 5348. Putting the values of 23,770 in a variable
mode drive. Set 23770.
5348 PUSH HL; conservation DE and HL
PUSH DE
CALL 15889; take the address of a variable of type
drive
LD A, (23770) take the drive type from 23 769
LD (HL), A; plant type drive
POP DE; restoration DE and HL
POP HL
RET; Returns
to be continued ...