Macro que dibuja un cuadro en las coordenadas especificadas en la macro.

Cuadro

Macro que dibuja un cuadro en las coordenadas especificadas en la macro.

Búsqueda de ejemplos en Ensamblador
;Autor Hector Torres
;URL

 gotoxy macro fil,col
   mov ah,02h
   mov bh,0h
   mov dh,fil
   mov dl,col
   int 10h
 endm
 
 poncar macro car
   mov ah,02h
   mov dl,car
   int 21h  
 endm
 
 poncar2 macro car2,cuanto
   mov ah,0Ah
   mov al,car2
   mov bh,0h
   mov bl,07h
   mov CX,cuanto
   int 10h  
 endm
 
 color macro fondo,lineas,ffi,cci,fff,ccf      
       mov ah,06h
       mov al,lineas
       mov bh,fondo
       mov ch,ffi
       mov cl,cci
       mov dh,fff
       mov dl,ccf
       int 10h
 endm
 
 cuadro macro fi,ci,ff,cf,colores
       local vertical      
       mov cl,ff
       sub cl,fi
       color colores,cl,fi,ci,ff,cf      
       ; pone las lineas horizontales      
       mov dl,cf
       sub dl,ci
       push DX
       gotoxy fi,ci
       pop DX
       mov dh,0
       poncar2 205,DX
       mov dl,cf
       sub dl,ci
       push DX
       gotoxy ff,ci
       pop DX
       mov dh,0h
       poncar2 205,DX
         
       ; pone las lineas verticales
       mov cl,ff
       sub cl,fi
       mov ch,0
       mov ah,fi
       mov var2,ah
       vertical:
          gotoxy var2,ci
          poncar 186
          gotoxy var2,cf
          poncar 186
          inc var2
       loop vertical
       
       gotoxy fi,ci
       poncar 201
       gotoxy fi,cf
       poncar 187
       gotoxy ff,ci
       poncar 200
       gotoxy ff,cf
       poncar 188
             
 endm
 
 espera macro
   mov ah,07h
   int 21h
 endm
 
 clrscr macro
    mov ah,00h
    mov al,03h
    int 10h
 endm
 
.model small
.stack
.data
  var   db ?
  var2  db ?
.code
.startup
  clrscr
  cuadro 1,1,24,79,07
  cuadro 5,5,20,70,27
  cuadro 10,10,15,55,07
  cuadro 12,30,14,35,12
  espera
.exit
end