Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- *-----------------------------------------------------------
- * Title :Generador de Cuadrícula
- * Written by :Fulgencio
- * Date :
- * Description:
- *-----------------------------------------------------------
- ORG $1000
- ORIX EQU 50
- ORIY EQU 50
- SIZE EQU 30
- ROWS EQU 5
- COLS EQU 5
- DRAWLINE EQU 84
- DRAWCIRC EQU 88
- START: ; first instruction of program
- * Put program code here
- JSR CUADRICULA
- MOVE.W #2,D1
- MOVE.W #3,D2
- JSR CIRCULO
- SIMHALT ; halt simulator
- CUADRICULA **************GENERA UNA CUADRÍCULA A PARTIR DE LAS CONSTANTES EQU DEFINIDAS ***************
- MOVEM.L D0-D4,-(A7)
- MOVE.W #ORIX,D1 *Nos ponemos en el origen D1 y D2
- MOVE.W #ORIY,D2
- VERTICALES
- MOVE.W D1,D3 *El otro extremo de las líneas en D3,D4
- MOVE.W D2,D4
- ADD.W #ROWS*SIZE,D4 *En las líneas verticales solo cambia la coordenada vertical (D4)
- MOVE.L #DRAWLINE,D0
- TRAP #15
- ADD.W #SIZE,D1
- CMP.W #ORIX+SIZE*(COLS+1),D1
- BNE VERTICALES
- MOVE.W #ORIX,D1 *Nos ponemos en el origen D1 y D2
- MOVE.W #ORIY,D2
- HORIZONTALES
- MOVE.W D1,D3 *El otro extremo de las líneas en D3,D4
- MOVE.W D2,D4
- ADD.W #COLS*SIZE,D3 *En las líneas horizontales solo cambia la coordenada horizontal (D3)
- MOVE.L #DRAWLINE,D0
- TRAP #15
- ADD.W #SIZE,D2
- CMP.W #ORIY+SIZE*(ROWS+1),D2
- BNE HORIZONTALES
- MOVEM.L (A7)+,D0-D4
- RTS *********************************************************************
- CIRCULO **************DIBUJA UN CÍRCULO EN COORDENADAS DE CUADRÍCULA FILA = D2, COL= D1 comenzando en 0,0 *********
- MOVEM.L D0-D4,-(A7)
- MULU #SIZE,D1 *Escalamos al tamaño de casilla
- MULU #SIZE,D2
- ADD.W #ORIX,D1 *Sumamos el origen
- ADD.W #ORIY,D2
- MOVE.W D1,D3 *Calculamos la otra esquina en D3 y D4 sumando SIZE
- MOVE.W D2,D4
- ADD.L #SIZE,D3
- ADD.L #SIZE,D4
- MOVE.L #DRAWCIRC,D0
- TRAP #15 *Dibujamos el círculo
- MOVEM.L (A7)+,D0-D4
- RTS
- * Put variables and constants here
- END START ; last line of source
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement