⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clock.asm

📁 独孤剑客 ASM Source Code 1998-2001 for DOS
💻 ASM
字号:
code    segment
        org     100h
        assume  cs:code,ds:code
Start:
        mov     ax,0a000h
        mov     es,ax
        mov     ax,0013h
        int     10h

l1:
        call    showtime_
        mov     ah,01h
        int     16h
        jz      l1

        mov     ax,0003h
        int     10h
        mov     ah,4ch
        int     21h

showNum_        proc    near
        push    ax
        push    bx
        push    cx
        push    dx

        mov     di,showNum_mPos
        mov     si,offset showNum_mBuff
        mov     al,showNum_mDigit
        mov     ah,44           ;22 dw(s)
        mul     ah
        add     si,ax
        mov     cx,22
showNum_l1:
        lodsw
        mov     dx,14
        mov     bx,ax
        rol     bx,1
        rol     bx,1
        rol     bx,1
        rol     bx,1
showNum_l2:
        rol     bx,1
        jc      showNum_l3
        mov     al,32
        jmp     showNum_l4
showNum_l3:
        mov     al,showNum_mColor
showNum_l4:
        stosb
        dec     dx
        jnz     showNum_l2
        add     di,320-14
        loop    showNum_l1
        add     showNum_mPos,14
        pop     dx
        pop     cx
        pop     bx
        pop     ax
        ret

showNum_mColor  db      31
showNum_mDigit  db      0
showNum_mPos    dw      0
showNum_mBuff   dw      3feh,5fdh,6fbh,707h,707h,707h,707h,707h,603h,401h,000h,401h,603h,707h,707h,707h,707h,707h,6fbh,5fdh,3feh,0
        dw      000h,001h,003h,007h,007h,007h,007h,007h,003h,001h,000h,001h,003h,007h,007h,007h,007h,007h,003h,001h,000h,0
        dw      3feh,1fdh,0fbh,007h,007h,007h,007h,007h,003h,1fdh,3feh,5fch,600h,700h,700h,700h,700h,700h,6f8h,5fch,3feh,0
        dw      3feh,1fdh,0fbh,007h,007h,007h,007h,007h,003h,1fdh,3feh,1fdh,003h,007h,007h,007h,007h,007h,0fbh,1fdh,3feh,0
        dw      000h,401h,603h,707h,707h,707h,707h,707h,603h,5fdh,3feh,1fdh,003h,007h,007h,007h,007h,007h,003h,001h,000h,0

        dw      3feh,5fch,6f8h,700h,700h,700h,700h,700h,600h,5fch,3feh,1fdh,003h,007h,007h,007h,007h,007h,0fbh,1fdh,3feh,0
        dw      3feh,5fch,6f8h,700h,700h,700h,700h,700h,600h,5fch,3feh,5fdh,603h,707h,707h,707h,707h,707h,6fbh,5fdh,3feh,0
        dw      3feh,1fdh,0fbh,007h,007h,007h,007h,007h,003h,001h,000h,001h,003h,007h,007h,007h,007h,007h,003h,001h,000h,0
        dw      3feh,5fdh,6fbh,707h,707h,707h,707h,707h,603h,5fdh,3feh,5fdh,603h,707h,707h,707h,707h,707h,6fbh,5fdh,3feh,0
        dw      3feh,5fdh,6fbh,707h,707h,707h,707h,707h,603h,5fdh,3feh,1fdh,003h,007h,007h,007h,007h,007h,0fbh,1fdh,3feh,0
        dw      000h,000h,000h,000h,000h,070h,070h,070h,000h,000h,000h,000h,000h,070h,070h,070h,000h,000h,000h,000h,000h,0
        dw      000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,070h,070h,070h,000h,0
        dw      000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,000h,0
showNum_        endp

showtime_       proc    near
        mov     ah,2ch
        int     21h

        cmp     dl,50
        ja      showtime_l1
        mov     bl,10
        jmp     showtime_l2
showtime_l1:
        mov     bl,12
showtime_l2:
        push    showtime_mPos
        pop     shownum_mPos
        mov     al,ch
        call    showal_
        mov     showNum_mDigit,bl
        call    showNum_
        mov     al,cl
        call    showal_
        mov     showNum_mDigit,bl
        call    showNum_
        mov     al,dh
        call    showal_
        mov     showNum_mDigit,11
        call    showNum_
        mov     al,dl
        call    showaL_

        ret
showtime_mPos   dw      320*80+70
showtime_       endp

showal_ proc    near
        push    bx
        mov     ah,0
        mov     bl,10
        div     bl
        mov     showNum_mdigit,al
        call    showNum_
        mov     showNum_mdigit,ah
        call    showNum_
        pop     bx
        ret
showal_ endp

code    ends
        end     Start

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -