1. Not finding help here? Sign up for a free 30min tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Pc based digital clock via parallel port using assembly language in tasm

  1. Oct 15, 2011 #1
    hi, i have this project and we already have a code and the circuit but it is not working..
    it's supposed to display the hours and minutes
    the problems are:
    1. the hour display is not displaying anything
    2. the minute displays but it is advanced by one minute

    so here's the code:
    Code (Text):
    TITLE CLOCK.ASM
    DOSSEG
    .MODEL SMALL
    .STACK 0100H
    .DATA
        PRINTERPORTBASEADDRESS equ 378h

    .CODE
    MAIN        PROC
        MOV AX, @DATA
        MOV DS, AX

        CALL RTIME  ; READ TIME
        CALL DisplayTime    ;DISPLAY TIME  
       
        MOV AX, 4C00H
        INT 21H
    MAIN        ENDP

    RTIME       PROC
        MOV AH, 02H
        INT 1AH
        RET

        ; CH - HOUR
        ; CL - MINUTES
        ; DH - SECONDS
    RTIME       ENDP

    DisplayTime PROC
        push    DX  ; was DH
        push    CX  ; was CL
    ;
        mov     AL,CH
        mov     DX,PRINTERPORTBASEADDRESS
        out     DX,AL
        mov     AL,01h
        mov     DX,PRINTERPORTBASEADDRESS+2
        out     DX,AL   ; enable display
        call    Delay
    ;
        mov     AL,00h
        mov     DX,PRINTERPORTBASEADDRESS+2
        out     DX,AL
        pop     AX  ; pop CL (minutes)
        mov     DX,PRINTERPORTBASEADDRESS
        out     DX,AL
        mov     AL,02h
        mov     DX,PRINTERPORTBASEADDRESS+2
        out     DX,AL   ; enable display
        call    Delay
    ;
        mov     AL,00h
        mov     DX,PRINTERPORTBASEADDRESS+2
        out     DX,AL
        pop     AX  ; pop DH (seconds)
        mov AL,AH
        mov     DX,PRINTERPORTBASEADDRESS
        out     DX,AL
        mov     AL,08h
        mov     DX,PRINTERPORTBASEADDRESS+2
        out     DX,AL   ; enable display
        call    Delay
    ;
        mov     DX,PRINTERPORTBASEADDRESS+2
        mov     AL,00h
        out     DX,AL
        ret

    DisplayTime ENDP

    Delay Proc
            MOV CX, 00100h
        X:  PUSH CX
            MOV CX, 0FFFFh
        Y:  LOOP Y
            POP CX
            LOOP X
            RET

    Delay ENDP
    END
    and the circuit:
    http://postimage.org/image/2egfc6wsk/
     
  2. jcsd
  3. Oct 15, 2011 #2
    please help.
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Pc based digital clock via parallel port using assembly language in tasm
  1. Assembly Language (Replies: 0)

  2. Assembly Language (Replies: 13)

Loading...