; data ;------ @youtext: DB 1,0,0,0,1,0,0,1,1,1,0,0,1,0,0,0,1,0 DB 1,0,0,0,1,0,1,0,0,0,1,0,1,0,0,0,1,0 DB 0,1,0,1,0,0,1,0,0,0,1,0,1,0,0,0,1,0 DB 0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0 DB 0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0 DB 0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,1,0 DB 0,0,1,0,0,0,0,1,1,1,0,0,0,1,1,1,0,0 DB 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @metext: DB 1,1,1,1,0,0,1,1,1,1,1,0 DB 1,0,0,0,1,0,1,0,0,0,0,0 DB 1,0,0,0,1,0,1,0,0,0,0,0 DB 1,1,1,1,0,0,1,1,1,1,0,0 DB 1,0,0,0,0,0,1,0,0,0,0,0 DB 1,0,0,0,0,0,1,0,0,0,0,0 DB 1,0,0,0,0,0,1,0,0,0,0,0 DB 0,0,0,0,0,0,0,0,0,0,0,0 drawtext proc push ax,dx push cs pop es mov bp,offset @youtext cmp ah,0 if e mov bp,offset @metext mov dx,2 mov si,23 cmp ah,1 if e add si,181 mov cx,8 @tl: push cx xor di,di mov cx,12 cmp ah,1 if e add cx,6 @tc: push cx mov cx,si add cx,di push ax mov ah,0ch mov al,es:[bp] int 10h pop ax inc di inc bp pop cx loop @tc inc dx xor di,di pop cx loop @tl pop dx,ax ret drawtext endp @numbers: DB 1,1,1,1,1,1,0 DB 0,1,1,0,0,0,0 DB 1,1,0,1,1,0,1 DB 1,1,1,1,0,0,1 DB 0,1,1,0,0,1,1 DB 1,0,1,1,0,1,1 DB 1,0,1,1,1,1,1 DB 1,1,1,0,0,0,0 DB 1,1,1,1,1,1,1 DB 1,1,1,1,0,1,1 StartX DB 20,35,35,20,15,15,20 StartY DB 15,20,40,55,40,20,35 DeltaX DB 15, 5, 5,15, 5, 5,15 DeltaY DB 5,15,15, 5,15,15, 5 drawline proc mov ax,0C01h mov bx,0 mov dl,[StartY+si] xor dh,dh xor ch,ch mov cl,[DeltaY+si] @ll: push cx mov di,0 xor ch,ch mov cl,[DeltaX+si] @lc: push cx mov cl,[StartX+si] xor ch,ch add cx,di add cx,bp int 10h inc di pop cx loop @lc xor di,di inc dx pop cx loop @ll ret drawline endp drawnumber proc xor dx,dx mov dl,ah call drawtext push cs pop es mov bp,offset @numbers push dx xor ah,ah mov bx,7 mul bx xor ah,ah add bp,ax pop dx xor dh,dh xor si,si @num: mov al,es:[bp+si] cmp al,0 je @go push bp push dx xor bp,bp cmp dl,1 if e add bp,187 call drawline pop dx pop bp @go: inc si cmp si,7 jl @num ret drawnumber endp