Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
11/08/03 06:35
Read: times


 
#58073 - Timer 0 interrupt problem ?
I wrote code for testing timer 0 interrupt event

whenever interrupt occurs it will read P1 port and

display on LCD but it does not work.

Could anyone correct it or show me why ?
Thanks.

Here are my code.

<pre>


#include "C:RigelReads51Includesfr51.inc"

HUNDRED EQU 100
COUNT EQU 10000
LCD_DATA EQU 90H ; P1
DB4 EQU 94H ;P1.4
DB5 EQU 95H;P1.5

DB6 EQU 96H;P1.6
DB7 EQU 97H;P1.7

RS EQU B3H ;P3.3
RW EQU B4H;P3.4
EN EQU B5H;P3.5

;P1.0 BIT 90H
;P1.1 BIT 91H
;P1.2 BIT 92H
;P1.3 BIT 93H


org 00h
Ljmp main
org 0bh
ljmp inter
org 30h

inter:inc r7
cjne r7,#20,skip
clr tr0
mov a,p1
lcall write_text
mov r7,#0
setb TR0
skip:reti

;;;;;;;;;;;;;;;;;;;;;;;
MAIN:
MOV 50h,#0
MOV 51H,#0
mov 50H,#40h ; vij tri dat thoi gian
mov 51H,#5h ; vi tri dat thoi gin off
LCALL INIT_LCD
LCALL CLEAR_LCD
mov p1,#0Fh
mov r7,#0
mov IE,#82h
mov tmod,#02h
mov th0,#-50
setb tr0
here: sjmp here



;;;;;;]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]];;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRITE_2_NIBBLES:
PUSH ACC ;Save A for low nibbleORL LCD_DATA,#0F0h ;Bits 4..7 <- 1
ORL LCD_DATA,#F0h; set high nible p1 len 1
ANL A,#F0h ;lay 4 bit cao A
MOV LCD_DATA,A ;High nibble to display
SETB EN
CLR EN
POP ACC ;Prepare to send
SWAP A ;...second nibble
ORL LCD_DATA,#F0h ; Bits 4...7 <- 1
ANL A,#F0h ; Don't affect bits 0...3
MOV LCD_DATA,A ;Low nibble to display
SETB EN
CLR EN
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
READ_LCD:
mov LCD_DATA,#0f0h
setb EN
mov a,LCD_DATA
clr EN
anl a,#0f0h
push acc
setb EN
mov a,LCD_DATA
clr EN
anl a,#0f0h
swap a
mov r0,a
pop acc
orl a,r0
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;//**** Wait LCD until it don't busy
WAIT_LCD:

setb RW
acall READ_LCD
jb acc.7,WAIT_LCD
clr RW
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAYMS: ;millisecond delay routine
; ;uses R7
MOV R7,#00H ;put 00H in register R7
LOOPA:
INC R7 ;increment R7
MOV A,R7 ;move R7 to Accumlator
CJNE A,#0FFH,LOOPA ;jump to LOOPA if R7 not equal to #FFH
RET ;return
;
;**************************************************************************
INIT_LCD:
CLR RS ; P3.3 = 0
CLR RW ;P3.4 =0
CLR EN ;P3.5 = 0
MOV A,#28h
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
MOV A,#28h
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
MOV A,#28h
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
MOV A,#0Eh ; turn LCD on
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
MOV A,#06h ; move cursor to the right
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CLEAR_LCD:
CLR RS
MOV A,#01h
LCALL WRITE_2_NIBBLES ;Write A as two separate nibbles to LCD
LCALL WAIT_LCD
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
WRITE_TEXT:
SETB RS
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;dat thoi gian on
LINE2:
clr rs
mov A,#C0h
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
POSITION:
CLR RS
MOV A,#0C9h
LCALL WRITE_2_NIBBLES
LCALL WAIT_LCD
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_ON:
LCALL CLEAR_LCD
MOV A,#'S' ;write L
LCALL WRITE_TEXT
MOV A,#'E' ;write C
LCALL WRITE_TEXT
MOV A,#'T' ;write D
LCALL WRITE_TEXT
MOV A,#' ' ;write
LCALL WRITE_TEXT
MOV A,#'O' ;write E
LCALL WRITE_TEXT
MOV A,#'N' ;write x
LCALL WRITE_TEXT
MOV A,#' ' ;write a
LCALL WRITE_TEXT
MOV A,#'T' ;write m
LCALL WRITE_TEXT
MOV A,#'I' ;write p
LCALL WRITE_TEXT
MOV A,#'M' ;write l
LCALL WRITE_TEXT
MOV A,#'E'

LCALL LINE2
MOV A,#'T'
LCALL WRITE_TEXT
MOV A,#'I'
LCALL WRITE_TEXT
MOV A,#'M'
LCALL WRITE_TEXT
MOV A,#'E'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'O'
LCALL WRITE_TEXT
MOV A,#'N'
LCALL WRITE_TEXT
MOV A,#':'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,50h ; doc gia tri cua time on
LCALL HEX_ASCI
LCALL WRITE_TEXT
MOV A,B
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'S'
LCALL WRITE_TEXT
;LCALL WAIT_LCD
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;dat thoi gian off
INC_ON: ; tang gia tri dat
push acc
MOV a,50H
INC a
mov 50H,a
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DEC_ON: ; tang gia tri dat
push acc
MOV a,50H
DEC a
mov 50H,a
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_OFF:
LCALL CLEAR_LCD
MOV A,#'S' ;write L
LCALL WRITE_TEXT
MOV A,#'E' ;write C
LCALL WRITE_TEXT
MOV A,#'T' ;write D
LCALL WRITE_TEXT
MOV A,#' ' ;write
LCALL WRITE_TEXT
MOV A,#'O' ;write E
LCALL WRITE_TEXT
MOV A,#'F' ;write x
LCALL WRITE_TEXT
MOV A,#'F' ;write x
LCALL WRITE_TEXT
MOV A,#' ' ;write a
LCALL WRITE_TEXT
MOV A,#'T' ;write m
LCALL WRITE_TEXT
MOV A,#'I' ;write p
LCALL WRITE_TEXT
MOV A,#'M' ;write l
LCALL WRITE_TEXT
MOV A,#'E'
LCALL LINE2
MOV A,#'T'
LCALL WRITE_TEXT
MOV A,#'I'
LCALL WRITE_TEXT
MOV A,#'M'
LCALL WRITE_TEXT
MOV A,#'E'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'O'
LCALL WRITE_TEXT
MOV A,#'F'
LCALL WRITE_TEXT
MOV A,#'F'
LCALL WRITE_TEXT
MOV A,#':'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,51h ; doc gia tri cua time on
LCALL HEX_ASCI
LCALL WRITE_TEXT
MOV A,B
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'P'
LCALL WRITE_TEXT
;LCALL WAIT_LCD
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INC_OFF: ; tang gia tri dat
push acc
MOV a,51H
INC a
mov 51H,a
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DEC_OFF: ; tang gia tri dat
push acc
MOV a,51H
DEC a
mov 51H,a
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_ONP:
homeon: LCALL SET_ON

;;;;;//////////////////////////////////////////////////////////
; doion: jnb 90h,giamonon;p1.0
; jnb 91h,tangonon
; jnb 92h,thoaton
;jnb 93h,doion

skip41: LCALL IN_HEX
cjne a,#00000001B,skip11 ;p00
sjmp giamonon

skip11: cjne a,#00000010B,skip21 ;p01
sjmp tangonon


skip21:cjne a,#00000100B,skip31 ; p02
sjmp thoaton
skip31:cjne a,#00001000B,skip41 ; p03

;;;;;;;;;;/////////////////////////////////////////////////
giamonon: LCALL DEC_ON
SJMP homeon
tangonon:LCALL INC_ON
SJMP homeon
thoaton:ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SET_OFFP:
homeoff: LCALL SET_OFF
;;;;;;;;///////////////////////////////////////////////////////////////////
;doioff: jnb 90h,giamoffoff;p1.0
; jnb 91h,tangoffoff
;jnb 92h,thoatoff
;jnb 93h,doioff

skip42: LCALL IN_HEX
cjne a,#00000001B,skip12 ;p00
sjmp giamoffoff
skip12: cjne a,#00000010B,skip22 ;p01
sjmp tangoffoff


skip22:cjne a,#00000100B,skip32 ; p02
sjmp thoatoff
skip32:cjne a,#00001000B,skip42 ; p03

;;;;;;;;;;;;;;;;;;;;;;;//////////////////////////////////////////////////////
giamoffoff: LCALL DEC_OFF
SJMP homeoff
tangoffoff:LCALL INC_OFF
SJMP homeoff
thoatoff:
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;/////////////////////////////////////////////////////////////////////////////////////
;goiseton: LCALL bounce
; LCALL SET_ONP
;goisetoff:LCALL bounce
; LCALL SET_OFFP
;goibegin:LCALL bounce
; LJMP BEGIN
; ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
bounce:
mov psw,#08h ; use second bank of registers
mov r0,#2h ; how many loops
x4b:
mov r2,#0ffh ; how many of loops inside loops
x5b:
mov r5,#0ffh ; length of each loop
x6b:
djnz r5,x6b ; stay here for awhile
djnz r2,x5b ; loop back up so many times
djnz r0,x4b ; loop to do all the loops
mov psw,#00h ; change back to first register bank
ret ; go back
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TACGIA:
LCALL INIT_LCD
LCALL CLEAR_LCD
LCALL WAIT_LCD
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'H'
LCALL WRITE_TEXT
MOV A,#'O'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'N'
LCALL WRITE_TEXT
MOV A,#'G'
LCALL WRITE_TEXT
MOV A,#'U'
LCALL WRITE_TEXT
MOV A,#'Y'
LCALL WRITE_TEXT
MOV A,#'E'
LCALL WRITE_TEXT
MOV A,#'N'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'N'
LCALL WRITE_TEXT
MOV A,#'G'
LCALL WRITE_TEXT
MOV A,#'H'
LCALL WRITE_TEXT
MOV A,#'I'
LCALL WRITE_TEXT
MOV A,#'A'
LCALL WRITE_TEXT
LCALL LINE2
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'D'
LCALL WRITE_TEXT
MOV A,#'T'
LCALL WRITE_TEXT
MOV A,#':'
LCALL WRITE_TEXT
MOV A,#' '
LCALL WRITE_TEXT
MOV A,#'0'
LCALL WRITE_TEXT
MOV A,#'9'
LCALL WRITE_TEXT
MOV A,#'1'
LCALL WRITE_TEXT
MOV A,#'2'
LCALL WRITE_TEXT
MOV A,#'3'
LCALL WRITE_TEXT
MOV A,#'2'
LCALL WRITE_TEXT
MOV A,#'0'
LCALL WRITE_TEXT
MOV A,#'8'
LCALL WRITE_TEXT
MOV A,#'6'
LCALL WRITE_TEXT
MOV A,#'4'
LCALL WRITE_TEXT
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
HEX_ASCI:
mov b,a ; b=a ; stores Acc in B
anl a,#0f0h ; a=xxxx0000 ; A && #f0h (get the high nibble)
swap a ; a=0000xxxx ; swap nibbles
orl a,#30h ; a=0011xxxx ; add #30h, if nibble is
push acc ; 0-9 we have the ASCII value
push b ; stores A and B
mov b,#3ah ; stores #3ah in B
div ab ; divide A/#3ah
jz chin1
; if zero, nibble < #0Ah
nibble1_ok:
pop B ; recover B
pop ACC ; recover A
add a,#07h ; adds #07h to get ASCII of A-F
xch A,B
sjmp nibble2
chin1:
pop b ; stores B
pop acc ; stores A
xch a,b
nibble2:
anl a,#0fh ; a=0000xxxx ; A && #0fh (get low nibble)
orl a,#30h ; a=0011xxxx ; add #30h, if nibble is
push acc ; 0-9 we have the ASCII value
push b ; stores A and B
mov b,#3ah ; stores #3ah in B
div ab ; divide A/#3ah
jz recupera2 ; if zero, nibble < #0Ah
pop b ; recover B
pop acc ; recover A
add a, #07h ; adds #07h to get ASCII of A-F
xch a,b
ret ; return to main routine
recupera2:
pop b ; recover B
pop acc ; recover A
xch a,b
ret ; return to main routine

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TIMER_ON:
MOV TMOD,#01h; = (TMOD & 0x0F) | 0x20; /* Set Mode (8-bit timer with reload) */
push acc
mov a,r2
push acc
MOV R2,#HUNDRED
AGAIN: MOV TH0,HIGH(COUNT)
MOV TL0,LOW(COUNT)
SETB TR0; ; /* Reload TL1 to count 100 clocks */
WAIT2: jnb TF0,WAIT2 ;TL1 = TH1;
clr TF0 ; /* Enable Timer 1 Interrupts */
clr TR0 ; = 1; ;/* Start Timer 1 Running */
;cjne r2,co
; co: inc R3
djnz r2,AGAIN ; = 1;
pop acc
mov r2,a
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY_ON:
push acc
mov a, R6
push acc
MOV R6,50H
timeon:LCALL TIMER_ON
DJNZ R6,timeon
pop acc
mov r6,acc
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY_10S:
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
LCALL TIMER_ON
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY_1PH:
LCALL DELAY_10S
LCALL DELAY_10S
LCALL DELAY_10S
LCALL DELAY_10S
LCALL DELAY_10S
LCALL DELAY_10S
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY_10PH:
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
LCALL DELAY_1PH
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DELAY_OFF:
push acc
mov a, R6
push acc
MOV R6,51H
timeoff:LCALL DELAY_1PH
DJNZ R6,timeoff
pop acc
mov r6,acc
pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
IN_HEX:
mov r3,#2
back: lcall GET_KEY
jnc IN_HEX ; neu c=0 quay lai doc
DJNZ r3,back
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
GET_KEY: mov a,p1
cpl a
anl a,#0Fh
push acc
mov r4,#4
onemore:clr c
rlc a
jc exit
djnz r4, onemore
sjmp nhayrathoi
exit: setb c
nhayrathoi:pop acc
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



;;;;;;;;/////////////////////////////////////////////////////////
; skip4: LCALL IN_HEX
; cjne a,#00000001B,skip1 ;p00
; sjmp goiseton
;skip1: cjne a,#00000010B,skip2 ;p01
; sjmp goisetoff
;skip2:cjne a,#00001000B,skip3 ; p03
; sjmp goibegin
;skip3:cjne a,#00000100B,skip4 ; p02

; */
;doimain:jnb 90h,goiseton
; jnb 91h,goisetoff
;jnb 93h,goibegin
;jnb 92h,doimain
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;







BEGIN:

mov 80h,#00h ;0->p0
clr b1h ; clear P3.1
mov a0h,#00h ;0-> P2
clr b0h ; ; clr P3.0
LCALL TACGIA

loopbegin:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.0
setb 80h
LCALL DELAY_ON
clr 80h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.1
setb 81h
LCALL DELAY_ON
clr 81h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.2
setb 82h
LCALL DELAY_ON
clr 82h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.3
setb 83h
LCALL DELAY_ON
clr 83h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.4
setb 84h
LCALL DELAY_ON
clr 84h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.5
setb 85h
LCALL DELAY_ON
clr 85h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.6
setb 86h
LCALL DELAY_ON
clr 86h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p0.7
setb 87h
LCALL DELAY_ON
clr 87h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.0
setb A0h
LCALL DELAY_ON
clr A0h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.1
setb A1h
LCALL DELAY_ON
clr A1h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.2
setb A2h
LCALL DELAY_ON
clr A2h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.3
setb A3h
LCALL DELAY_ON
clr A3h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.4
setb A4h
LCALL DELAY_ON
clr A4h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.5
setb A5h
LCALL DELAY_ON
clr A5h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.6
setb A6h
LCALL DELAY_ON
clr A6h
LCALL DELAY_OFF
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p2.7
setb A7h
LCALL DELAY_ON
clr A7h
LCALL DELAY_OFF
Ljmp loopbegin

endsss:
END

<pre/>

List of 9 messages in thread
TopicAuthorDate
Timer 0 interrupt problem ?            01/01/70 00:00      
   RE: Timer 0 interrupt problem ?            01/01/70 00:00      
   Want to insult us? -100 points!            01/01/70 00:00      
      RE: Want to insult us? -100 points!            01/01/70 00:00      
         RE: Want to insult us? -100 points!            01/01/70 00:00      
            RE: Want to insult us? -100 points!            01/01/70 00:00      
            RE: Want to insult us? -100 points!            01/01/70 00:00      
               RE: Want to insult us? -100 points!            01/01/70 00:00      
   RE: Timer 0 interrupt problem ?            01/01/70 00:00      

Back to Subject List