All, If there are any x86 programmers out there that are familiar with assembly language, I would appreciate you having a look at my delay routine and see if you see any obvious reason why it wouldn't work. If I use debug, it seems to work fine. But if I try to let it run stand alone, it prints one 16 bit value on the screen, and then hangs. I don't understand why it isn't working. If anyone can help, I'd appreciate it very much. Please advise off line to jim@jpes.com Thanks and Regards, Jim ; RTC.asm print hardware timer values org 100h push bp stosb l1: call near time_delay ; Here is where I call the delay routine below. call near time_delay ; I called it three times to see if I could notice a delay call near time_delay ; a little better. But I see no difference between one time and three times. mov dx,14ch ;lo in al,dx mov cl,al mov dx,14dh ;hi in al,dx call near putc ;print mov al,cl call near putc mov ax,120h ;' ' mov dx,0 int 14h jmp near l1 putc: and al,0fh or al,30h mov ah,1 mov dx,0 int 14h mov ah,0eh int 10h ret ======================= ; Here is the routine I'm interested in having evaluated time_delay: mov dx,0xffff loop1: dec dx cmp dx, 0 jnz loop1 ret -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist