Ensamblador - Problema con modo grafico [me sale esto]

 
Vista:

Problema con modo grafico [me sale esto]

Publicado por Harlok (5 intervenciones) el 17/05/2005 13:35:03
Bueno, llevo ya un par de semanas con el mismo error, y mira k es muy muy simple lo que quiero hacer...
1- INICIAR MODO GRAFICO
2- BORDE DE PANTALLA (al imprimir pixel pasa igual)

pero me sale la pantalla distorsionada... el codigo es...:
--------------------------
DOSSEG
.model small
.stack
.code
x proc
mov ax,dgroup
mov ds,ax ;inicio

mov ax,0012h
int 10h ;modo grafico

mov ax,1001h
mov bx,0007h
int 10h ;imprime borde pantalla

mov ax,4c00h
int 21h ;cierro

x endp
end x
--------------------------------

Compilo y linko con MASM y el error es k la pantalla me sale distorsionada en vez de dibujar el marco tal cual, gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con modo grafico [me sale esto]

Publicado por Ge-ergon (46 intervenciones) el 18/05/2005 06:46:14
Hola!

Creo que lo que intentas hacer es ingresar al modo gráfico (640 * 480) y crear un marco.

mov ax,1001h
mov bx,0007h
int 10h ;imprime borde pantalla

No entiendo que hace esta parte de tu código, me parece que la interrupcción esta mal empleada. Si deseas escribir un marco debes hacerlo pixel por pixel. O mejor aun copiarlo directamente a la memoria de video (necesita un "wait" al "vertical retrace").

Gracias por su tiempo
Att: Ge-ergon
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con modo grafico [me sale esto]

Publicado por Ge-ergon (46 intervenciones) el 18/05/2005 06:49:43
Hola!, te paso este ejemplo esta escrito para tasm 4.0 y debe ser enlazado con tlink 4.0 en modo creación .com (tlink /tdc).

ideal
model tiny
p286
codeseg
org 0100h
begin:
mov ax,0012h
int 10h ;modo grafico
mov [word ptr i],270h ; Dibuja caja, lineas horizontales
mov cx,0h
otrav: inc cx
mov dx,0h
call int10_C
mov dx,1C9h
call int10_C
dec [word ptr i]
cmp [word ptr i],1h
ja otrav
mov [word ptr i],1CAh ; Dibuja caja, lineas verticales
mov dx,0h
otrav2: inc dx
mov cx,0h
call int10_C
mov cx,270h
call int10_C
dec [word ptr i]
cmp [word ptr i],1h
ja otrav2
mov ah,0
int 16h
mov ax,4c00h
int 21h ;cierro
; PSEUDO DATA
i dw 0h
;La unica funcion
int10_C: mov ah,0ch
mov bh,0h
mov al,0fh
int 10h
ret
end begin
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con modo grafico [me sale esto]

Publicado por Harlok (5 intervenciones) el 18/05/2005 12:40:11
Set Border Color
----------------------------
AX = 1001h
BH = Color
INT 10H
----------------------------
----------------------------
Por eso he puesto lo del borde, pero bueno k ni imprimiendo pixel funciona, puede ser por culpa del win? alguna vez me ha funcionado ejecutandolo en win pero otras en el mismo no, no se si seran caprichos del interprete de comandos o no se...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema con modo grafico [me sale esto]

Publicado por Ge-ergon (46 intervenciones) el 18/05/2005 21:04:19
Hola!
El codigo que tu tienes debe funcionar, el código adjunto a mi me funciono correctamente en windows 98 SE: Incluso como ejecutable .com

ideal
model tiny
p286
codeseg
org 0100h
begin:
mov ax,0012h
int 10h ;modo grafico
mov ax ,1001h
mov bh, 09h
int 10h
mov ah,0
int 16h
mov ax,4c00h
int 21h ;cierro
end begin
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar