*************** **************** 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 5715. Check the status of the file. File Number
set in register A. Gets the Z, if the file is erased
and NZ, if not, as in A will be the first name character
file.
5715 CALL 5725; reading the file descriptor
LD A, (23773) take the first character filename
CP 1, inspection of the file
RET; Returns
Address 5724. Reading a file descriptor. At the entrance to the
register A place the file number. Descriptor will be loaded at
23,781. It is also used to address: 5725 - the same as 5724,
but the file number on the register C.
5726 - the same as 6121, but retains the file number.
5724 LD C, A; transfer a file number in the reg. C
5725 XOR A; transfer the descriptor from the buffer in PA
rumple
5726 PUSH BC; saving the file number
CALL 6121; reading sector with a handle and transfer
bow handle
POP BC; restore the file number
RET; Returns
Address 5732. record information about the file. Login:
descriptor is located 23773 and a battery put the file number.
5732 LD C, A; shift in the C file number
CALL 5739; reading sector and the replacement of the
descriptor
File it
JP 7747; rewriting sector
Address 5739. Reading in the buffer descriptor sector
file and change the descriptor. Put a handle on
at 23,773.
5739 LD A, 255, move the handle of the variables in
buffer
JR 5726, the same as 6121, but with preservation
BC
Address 5743. Reservation of seats in the memory. Sets 23759
and 23843. 5743 LD A, 255; WORKSP used
LD (23822), A
CALL 5760; size calculation available
Memory
LD HL, (23649), setting the address of the working domains
T
LD (23759), HL
JP 7715; allocation of memory space and air
Gates
Address 5760. Calculation of the amount of free memory
sectors.
The size of free memory in bytes will be in BC, and in
sectors - to 23,843.
5760 RST 32, take the amount of free memory
Tee in bytes
DEFW # 1F1A
LD HL, 65535
SBC HL, BC
LD A, H; free less than 16 sectors?
CP 1916
JR NC, 5775, and if so,
LD A, 17, will allocate 16 sectors
5775 DEC A; 1 sector, just in case
LD (23843), A; sets the size of the free parameters
myati sectors
LD B, A; sets the size of the free parameters
myati bytes
LD C, 0
RET; Returns
Address 5783. Puts in HL 23767 and 23771 and adds 23,786 (1
byte) to 23,769 (2 bytes). 5783 LD (23767), HL; installation
23767 and 23769
LD (23771), HL
LD DE, (23786), the addition of 23,786 and 23,769
LD HL, (23769)
LD D, 0
ADD HL, DE
LD (23769), HL
RET; Returns
to be continued ...