21H INTERNO (0x21)
Función 15H (0x15 o 21) --> Secuencial escribir
Call with: AH = 15H
DS: DX = segment: offset of previously opened
file control block
Returns: AL = 00H, if write successful
01H, if disk is file
02H, if segment wrap
Comentarios:
Esta función escribe el bloque secuencial siguiente de los datos en un archivo, entonces incrementos el puntero de fichero apropiadamente. El número de octetos de datos que se escribirán es especificado por el tamaño-campo de registro (compensar 0EH) del bloque de control de archivo (FCB).
21H INTERNO (0x21)
Función 16H (0x16 o 22) --> Crear el archivo
Call with: AH = 16H
DS: DX = segment: offset of unopened file control block
Returns: If function is successful and file was created or truncated
AL = 00H
And FCB filled in by MS-DOS as follows:
Campo de impulsión (compensar 00H) =1 para la impulsión A, 2 para la impulsión B, etc.
Campo actual del bloque (offset0CH) = 00H
Campo del tamaño del registro (compensar 0EH) = 0080H
Campo del tamaño (compensar 10H) = tamaño del archivo del directorio
Campo de la fecha (compensar 14H) = estampilla de fecha del directorio
Campo de Tiempo (compensar 16H) = grupo fecha/hora del directorio |
If function unsuccessful (directory full)
AL = FFH
Comentarios:
Esta función crea una nueva entrada en la guía en el directorio actual o trunca cualquier archivo existente con el mismo nombre a la longitud cero. También abre el archivo para las operaciones de lectura/grabación subsecuentes. Esta función se debe utilizar con la precaución porque un archivo existente con el nombre especificado se trunca a la longitud cero y a todos los datos en que el archivo está perdido irrecuperable.
21H INTERNO (0x21)
Función 17H (0x17 o 23) --> Retitular el archivo
Call with: AH = 17H
DS: DX = segment: offset of special file control
block
Returns: If function is successful and one or more files renamed
AL = 00H
If function is unsuccessful and no matching files, or new filename matched an existing file
AL = FFH
Comentarios:
Esta función cambia el nombre de todos los archivos que emparejan en el directorio actual en el disco en la impulsión especificada.
Puedes también utilizar comodines con esto. El bloque de control del fichero especial tiene un código de la impulsión, nombre de fichero, y la extensión en la posición generalmente (octetos 0 0BH directos) y un segundo nombre de fichero que comienza 6 octetos después del primer (11H compensado).
21H INTERNO
Función 18H (0x18 o 24) --> Reservado
21H INTERNO (0x21)
Función 19H (0x19 o 25) --> Conseguir el disco actual
Call with: AH = 19H
Returns: AL = drive code (0 for A drive, 1 for B
drive etc.)
Comentarios:
Esta función vuelve el código de la impulsión del accionamiento de disco de la corriente o del defecto.
21H INTERNO (0x21)
Función 1AH (0x1A o 26) --> Fijar la dirección de DTA
Call with: AH = 1AH
DS: DX = segment: offset of disk transfer area.
Returns: Nothing
Comentarios:
Esta función especifica la dirección del área de la transferencia del disco (DTA) que se utilizará para las llamadas de función FCB-relacionadas subsecuentes.
21H INTERNO (0x21)
Función 1BH (0x1B o 27) --> Conseguir los datos de la impulsión de defecto
Call with: AH = 1BH
Returns: If function successful
AL = sectors per cluster
DS: DX = segment offset of media ID byte
CX = size of physical sector in bytes
DX = number of clusters for default drive
If function unsuccessful (invalid drive or critical error)
AL = FFH
Comentarios:
Esta función obtiene la información seleccionada sobre el accionamiento de disco del defecto y un indicador al octeto de la identificación de los medios de su tabla de la asignación de un espacio para un fichero.
El octeto de la identificación de los medios tiene los significados siguientes:
Identificación del descriptor de los medios |
Medio
|
0F0H |
diskette de 3.5 pulgadas, de doble cara, 18 sectores (u otro) |
0F8H |
disco fijo |
0F9H |
diskette de 5.25 pulgadas, de doble cara, 15 sectores |
0F9H |
diskette de 3.5 pulgadas, de doble cara, 9 sectores |
0FCH |
diskette de 5.25 pulgadas, single-sided, 9 sectores |
0FDH |
diskette de 5.25 pulgadas, de doble cara, 9 sectores |
0FDH |
la diskette de 8 pulgadas, escoge densidad echada a un lado, sola |
0FEH |
5.25 avanzan a poquitos la diskette, single-sided, 8 sectores |
0FEH |
la diskette de 8 pulgadas, escoge densidad echada a un lado, sola |
0FEH |
diskette de 8 pulgadas, densidad de doble cara, doble |
0FFH |
diskette de 5.25 pulgadas, de doble cara, 8 sectores |
|