conversion archivo a mayusculas

chopperlove
10 de Febrero del 2010
hola chavos del foro,sólo necesito una rutina en este archivo de ensamblador para q'al momento de q'haga el archivo "texto_copia.txt" que,lógicamente es una copia del archivo "texto.txt",el contenido de la copia sea en mayusculas

TITLE Copia un Archivo de Texto

INCLUDE Irvine16.inc

.data
TamBuf = 256
archent BYTE "texto.txt",0
archsal BYTE "texto_copia.txt",0
manejadorEnt WORD ?
manejadorSal WORD ?
buffer BYTE TamBuf DUP(?)
bytesLeidos WORD ?
pString BYTE ?

.code
main PROC
mov ax,@data
mov ds,ax

;Abre el Archivo
mov ax,716Ch ;Abrir o crear extendido
mov bx,0 ;Modo = sólo lectura
mov cx,0 ;Atributo Normal
mov dx,1 ;Abrir
mov si,OFFSET archent
int 21h ;interrupcion MS-DOs
jc termina ;Termina si hay error
mov manejadorEnt,ax

;Lee el Archivo
mov ah,3Fh ;Lee Archivo
mov bx,manejadorEnt ;Manejador del archivo
mov cx,TamBuf ;Número max de bytes
mov dx,OFFSET buffer ;Apuntador del buffer
int 21h ;interrupcion MS-DOS
jc termina ;Termina si hay un error
mov bytesLeidos,ax

;Muestra lo que hay en el buffer
mov ah,40h ;Escribe en archivo
mov bx,1 ;Manejador de salida de consola
mov cx,bytesLeidos ;Número de bytes
mov dx,OFFSET buffer ;Apuntador del buffer
int 21h ;interrupcion MS-DOs
jc termina ;Termina si hay un error

;Cierra el Archivo
mov ah,3Eh ;Cerrar Archivo
mov bx,manejadorEnt ;Manejador de archivo de entrada
int 21h ;interrupcion MS-DOs
jc termina ;Termina si hay un error

;Crea la Copia
mov ax,716Ch ;Crear o abrir
mov bx,1 ;Modo = Sólo lectura
mov cx,0 ;Atributos Normales
mov dx,12h ;Acción Crear
mov si,OFFSET archsal
int 21h ;interrupcion MS-DOs
jc termina ;Termina si hay error
mov manejadorSal,ax ;Guarda el manejador

;Escribe bufer en el archivo nuevo
mov ah,40h ;Escribe archivo
mov bx,manejadorSal ;Manejador Archivo de Salida
mov cx,bytesLeidos ;Número de Bytes
mov dx,OFFSET buffer ;Apuntador del Buffer
int 21h ;interrupcion MS-DOs
jc termina ;Termina si hay error

;Cierra el Archivo
mov ah,3Eh ;Funcion : Cerrar Archivo
mov bx,manejadorSal ;manejador de archivo salida
int 21h ;interrupcion MS-DOs

termina:
call Crlf
exit

main ENDP
END main

Arturo G
10 de Febrero del 2010
Hola, me tope con este mensaje, y aunque no se hacer lo que quieres hacer, me gustaria que me explicaras como crear un txt desde ensamblador, es decir, hice un programa en ensamblador, que da la opcion al usuario de escribir y escribir, lo que quiero hacer, es guardar esa informacion en un txt, se puede? y si es asi me gustaria que me ayudaras con eso, gracias