try this code ;) but don't forget to looking for how to spiral matrix in GOOGLE
if you have other exercise let me take a look at it
STACK 256
DATASEG
exCode DB 0
Msg DB 'qogndmaprotmbjdlspmkaqwitpui',13,10,'$'
CODESEG
Start:
mov ax, @Data
mov ds,ax
mov di,offset Msg
mov ch,12
mov cl,12
mov bh,0 ; number of page
mov dh,ch ; number of row
mov dl,cl ; number of column
mov ah,02h
int 10h
p1:
mov dl,[di]
int 21h
inc di
inc cl
cmp cl,19;if column=19
jne p1
p2:
mov bh,0 ; number of page
mov dh,ch ; number of row
mov dl,cl ; number of column
mov ah,02h
int 10h
inc ch
mov dl,[di]
int 21h
inc di
cmp ch,19;
jne p2
p3:
mov bh,0 ; number of page
mov dh,ch ; number of row
mov dl,cl ; number of column
mov ah,02h
int 10h
dec cl
mov dl,[di]
int 21h
inc di
cmp cl,12;
jne p3
p4:
mov bh,0 ; number of page
mov dh,ch ; number of row
mov dl,cl ; number of column
mov ah,02h
int 10h
dec ch
mov dl,[di]
int 21h
inc di
cmp ch,12;
jne p4
mov ah,02h
int 10h
Exit:
mov ah,04Ch
mov al,[exCode]
int 21h
END Start
if you want to Minimize the Code put this code in a procedure and call it
mov bh,0 ; number of page
mov dh,ch ; number of row
mov dl,cl ; number of column
mov ah,02h
int 10h
Edited by H2010, 03 December 2010 - 09:21 AM.