this is the code of a calculator is written by josh I changed and I want to incorporate a clock to this calculatorbut I could not even using the code of DigitClock
pleaaaase help me
*********************************code***********************************
Code:
ORG $1000
START:
MOVE.L #MOUSEDOWNIRQ,$68
MOVE.B #60,D0
MOVE.W #$0201,D1
TRAP #15
CLEAR
CLR.B D7
BRA DRAWBUTTONS
MAINLOOP:
NOP
NOP
NOP
NOP
CMP.B #0,D7
BEQ MAINLOOP
BRA CLEAR
*********SUBR***********************************************
DRAWBUTTONS:
LEA $1000,A7
PEA FIELD_L
PEA FIELD_T
PEA FIELD_W
PEA FIELD_H
BSR RECT
LEA $1000,A7
PEA CLR_L
PEA CLR_T
PEA CLR_W
PEA CLR_H
BSR RECT
LEA $1000,A7
PEA CLR_TEXT
BSR TEXT
LEA $1000,A7
PEA EQU_L
PEA EQU_T
PEA EQU_W
PEA EQU_H
BSR RECT
LEA $1000,A7
PEA EQU_TEXT
BSR TEXT
LEA $1000,A7
PEA DIV_L
PEA DIV_T
PEA DIV_W
PEA DIV_H
BSR RECT
LEA $1000,A7
PEA DIV_TEXT
BSR TEXT
LEA $1000,A7
PEA MUL_L
PEA MUL_T
PEA MUL_W
PEA MUL_H
BSR RECT
LEA $1000,A7
PEA MUL_TEXT
BSR TEXT
LEA $1000,A7
PEA SUB_L
PEA SUB_T
PEA SUB_W
PEA SUB_H
BSR RECT
LEA $1000,A7
PEA SUB_TEXT
BSR TEXT
LEA $1000,A7
PEA ADD_L
PEA ADD_T
PEA ADD_W
PEA ADD_H
BSR RECT
LEA $1000,A7
PEA ADD_TEXT
BSR TEXT
LEA $1000,A7
PEA DIV_L
PEA DIV_T
PEA DIV_W
PEA DIV_H
BSR RECT
LEA $1000,A7
PEA DIV_TEXT
BSR TEXT
LEA $1000,A7
PEA PA_L
PEA PA_T
PEA PA_W
PEA PA_H
BSR RECT
LEA $1000,A7
PEA PA_TEXT
BSR TEXT
LEA $1000,A7
PEA BAR_L
PEA BAR_T
PEA BAR_W
PEA BAR_H
BSR RECT
LEA $1000,A7
PEA BAR_TEXT
BSR TEXT
LEA $1000,A7
PEA KEL_L
PEA KEL_T
PEA KEL_W
PEA KEL_H
BSR RECT
LEA $1000,A7
PEA KEL_TEXT
BSR TEXT
LEA $1000,A7
PEA CEL_L
PEA CEL_T
PEA CEL_W
PEA CEL_H
BSR RECT
LEA $1000,A7
PEA CEL_TEXT
BSR TEXT
LEA $1000,A7
PEA OR_L
PEA OR_T
PEA OR_W
PEA OR_H
BSR RECT
LEA $1000,A7
PEA OR_TEXT
BSR TEXT
LEA $1000,A7
PEA AND_L
PEA AND_T
PEA AND_W
PEA AND_H
BSR RECT
LEA $1000,A7
PEA AND_TEXT
BSR TEXT
LEA $1000,A7
PEA XOR_L
PEA XOR_T
PEA XOR_W
PEA XOR_H
BSR RECT
LEA $1000,A7
PEA XOR_TEXT
BSR TEXT
LEA $1000,A7
PEA XNOR_L
PEA XNOR_T
PEA XNOR_W
PEA XNOR_H
BSR RECT
LEA $1000,A7
PEA XNOR_TEXT
BSR TEXT
LEA $1000,A7
PEA ZERO_L
PEA ZERO_T
PEA ZERO_W
PEA ZERO_H
BSR RECT
LEA $1000,A7
PEA ZERO_text
BSR TEXT
LEA $1000,A7
PEA ONE_L
PEA ONE_T
PEA ONE_W
PEA ONE_H
BSR RECT
LEA $1000,A7
PEA ONE_text
BSR TEXT
LEA $1000,A7
PEA TWO_L
PEA TWO_T
PEA TWO_W
PEA TWO_H
BSR RECT
LEA $1000,A7
PEA TWO_text
BSR TEXT
LEA $1000,A7
PEA THREE_L
PEA THREE_T
PEA THREE_W
PEA THREE_H
BSR RECT
LEA $1000,A7
PEA THREE_text
BSR TEXT
LEA $1000,A7
PEA FOUR_L
PEA FOUR_T
PEA FOUR_W
PEA FOUR_H
BSR RECT
LEA $1000,A7
PEA FOUR_text
BSR TEXT
LEA $1000,A7
PEA FIVE_L
PEA FIVE_T
PEA FIVE_W
PEA FIVE_H
BSR RECT
LEA $1000,A7
PEA FIVE_text
BSR TEXT
LEA $1000,A7
PEA SIX_L
PEA SIX_T
PEA SIX_W
PEA SIX_H
BSR RECT
LEA $1000,A7
PEA SIX_text
BSR TEXT
LEA $1000,A7
PEA SEVEN_L
PEA SEVEN_T
PEA SEVEN_W
PEA SEVEN_H
BSR RECT
LEA $1000,A7
PEA SEVEN_text
BSR TEXT
LEA $1000,A7
PEA EIGHT_L
PEA EIGHT_T
PEA EIGHT_W
PEA EIGHT_H
BSR RECT
LEA $1000,A7
PEA EIGHT_text
BSR TEXT
LEA $1000,A7
PEA NINE_L
PEA NINE_T
PEA NINE_W
PEA NINE_H
BSR RECT
LEA $1000,A7
PEA NINE_text
BSR TEXT
MOVE.W #1000,D1
CLR.B D1
MOVE.B #3,D1
MOVE.B #11,D0
TRAP #15
CLR.L D1
clr.l d0
clr.l d1
clr.l d2
clr.l d3
clr.l d4
BRA MAINLOOP
RECT:
MOVEA.L 16(A7),A2
MOVEA.L 12(A7),A3
MOVEA.L 8(A7),A4
MOVEA.L 4(A7),A5
MOVE.W (A2),D1
MOVE.W (A3),D2
MOVE.W (A2),D3
ADD.W (A4),D3
MOVE.W (A3),D4
ADD.W (A5),D4
MOVE.B #87,D0
TRAP #15
RTS
TEXT:
MOVEA.L 4(A7),A1
ADD.W #14,D1
ADD.W #17,D2
MOVE.B #95,D0
TRAP #15
RTS
APPEND
move.l D2,d0
asl.l #3,d0
bvs overflow
add.l D2,d0
bvs overflow
add.l D2,d0
bvs overflow
add.l d1,d0
move.L d0,NUM
overflow
rts
DIV
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
MOVE.L NUM,D2
DIVS.W D2,D1
EXT.L D1
MOVE.B #3,D0
trap #15
BRA EXIT
MUL
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
MOVE.L NUM,D2
MULS.W D2,D1
MOVE.L D1,D3
MOVE.B #3,D0
trap #15
BRA EXIT
SUB
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
MOVE.L NUM,D2
SUB.L D2,D1
MOVE.B #3,D0
trap #15
BRA EXIT
ADD
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
ADD.L NUM,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
PA
CLR.L D1
MOVE.L NUM2,D1
MULS.W #10000,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
BAR
CLR.L D1
MOVE.L NUM2,D1
DIVS.W #10000,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
KEL
CLR.L D1
MOVE.L NUM2,D1
ADD.L #273,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
CEL
CLR.L D1
MOVE.L NUM2,D1
SUB.L #273,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
OR
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
OR.L NUM,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
AND
CLR.L D1
CLR.L D2
MOVE.L NUM2,D1
AND.L NUM,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
XOR
CLR.L D1
CLR.L D2
CLR.L D0
MOVE.L NUM2,D1
MOVE.L NUM,D0
EOR.W D0,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
XNOR
CLR.L D1
CLR.L D2
CLR.L D0
MOVE.B NUM2,D1
MOVE.B NUM,D0
EOR.B D0,D1
NOT.B D1
AND.B #1,D1
MOVE.B #3,D0
TRAP #15
BRA EXIT
MOUSEDOWNIRQ
MOVE.B #61,d0
MOVE.B #2,d1
TRAP #15
CLR.L d2
MOVE.W d1,d2
SWAP d1
AND.L #$0FFFF,d1
*CLR
if.w d1 <gt> #240 and.w d1 <lt> #290 then
if.w d2 <gt> #10 and.w d2 <lt> #60 then
MOVE.W #$FF00,D1
MOVE.B #11,D0
TRAP #15
CLR.L NUM
CLR.L NUM2
CLR.B OPRAND
clr.l d1
clr.l d2
clr.l d3
MOVE.B #1,D7
BRA EXIT
endi
endi
*EQU
if.w d1 <gt> #240 and.w d1 <lt> #290 then
if.w d2 <gt> #120 and.w d2 <lt> #170 then
LEA EQU_TEXT,A1
MOVE.B #14,D0
TRAP #15
CMP.B #1,OPRAND
BEQ DIV
CMP.B #2,OPRAND
BEQ MUL
CMP.B #3,OPRAND
BEQ SUB
CMP.B #4,OPRAND
BEQ ADD
CMP.B #5,OPRAND
BEQ PA
CMP.B #6,OPRAND
BEQ BAR
CMP.B #7,OPRAND
BEQ KEL
CMP.B #8,OPRAND
BEQ CEL
CMP.B #9,OPRAND
BEQ OR
CMP.B #10,OPRAND
BEQ AND
CMP.B #11,OPRAND
BEQ XOR
CMP.B #12,OPRAND
BEQ XNOR
endi
endi
*DIV
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #175 and.w d2 <lt> #225 then
CMP.B #0,OPRAND
BNE EXIT
LEA DIV_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #1,OPRAND
BRA EXIT
endi
endi
*MUL
if.w d1 <gt> #130 and.w d1 <lt> #180 then
if.w d2 <gt> #175 and.w d2 <lt> #225 then
CMP.B #0,OPRAND
BNE EXIT
LEA MUL_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #2,OPRAND
BRA EXIT
endi
endi
*SUB
if.w d1 <gt> #185 and.w d1 <lt> #235 then
if.w d2 <gt> #175 and.w d2 <lt> #225 then
CMP.B #0,OPRAND
BNE EXIT
LEA SUB_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #3,OPRAND
BRA EXIT
endi
endi
*ADD
if.w d1 <gt> #240 and.w d1 <lt> #290 then
if.w d2 <gt> #175 and.w d2 <lt> #225 then
CMP.B #0,OPRAND
BNE EXIT
LEA ADD_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #4,OPRAND
BRA EXIT
endi
endi
*PA
if.w d1 <gt> #240 and.w d1 <lt> #290 then
if.w d2 <gt> #230 and.w d2 <lt> #280 then
CMP.B #0,OPRAND
BNE EXIT
LEA PA_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #5,OPRAND
BRA EXIT
endi
endi
*BAR
if.w d1 <gt> #185 and.w d1 <lt> #235 then
if.w d2 <gt> #230 and.w d2 <lt> #280 then
CMP.B #0,OPRAND
BNE EXIT
LEA BAR_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #6,OPRAND
BRA EXIT
endi
endi
*KEL
if.w d1 <gt> #130 and.w d1 <lt> #180 then
if.w d2 <gt> #230 and.w d2 <lt> #280 then
CMP.B #0,OPRAND
BNE EXIT
LEA KEL_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #7,OPRAND
BRA EXIT
endi
endi
*CEL
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #230 and.w d2 <lt> #280 then
CMP.B #0,OPRAND
BNE EXIT
LEA CEL_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #8,OPRAND
BRA EXIT
endi
endi
*OR
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #285 and.w d2 <lt> #335 then
CMP.B #0,OPRAND
BNE EXIT
LEA OR_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #9,OPRAND
BRA EXIT
endi
endi
*AND
if.w d1 <gt> #130 and.w d1 <lt> #185 then
if.w d2 <gt> #285 and.w d2 <lt> #335 then
CMP.B #0,OPRAND
BNE EXIT
LEA AND_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #10,OPRAND
BRA EXIT
endi
endi
*XOR
if.w d1 <gt> #190 and.w d1 <lt> #245 then
if.w d2 <gt> #285 and.w d2 <lt> #335 then
CMP.B #0,OPRAND
BNE EXIT
LEA XOR_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #11,OPRAND
BRA EXIT
endi
endi
*XNOR
if.w d1 <gt> #250 and.w d1 <lt> #305 then
if.w d2 <gt> #285 and.w d2 <lt> #335 then
CMP.B #0,OPRAND
BNE EXIT
LEA XNOR_TEXT,A1
MOVE.B #14,D0
TRAP #15
MOVE.L NUM,NUM2
CLR.L NUM
MOVE.B #12,OPRAND
BRA EXIT
endi
endi
*ZERO
if.w d1 <gt> #240 and.w d1 <lt> #290 then
if.w d2 <gt> #65 and.w d2 <lt> #115 then
CLR.L D1
CLR.L D2
move.b #0,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*ONE
if.w d1 <gt> #185 and.w d1 <lt> #235 then
if.w d2 <gt> #10 and.w d2 <lt> #60 then
CLR.L D1
CLR.L D2
move.b #1,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*TWO
if.w d1 <gt> #185 and.w d1 <lt> #235 then
if.w d2 <gt> #65 and.w d2 <lt> #115 then
CLR.L D1
CLR.L D2
move.b #2,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*THREE
if.w d1 <gt> #185 and.w d1 <lt> #235 then
if.w d2 <gt> #120 and.w d2 <lt> #170 then
CLR.L D1
CLR.L D2
move.b #3,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*FOUR
if.w d1 <gt> #130 and.w d1 <lt> #180 then
if.w d2 <gt> #10 and.w d2 <lt> #60 then
CLR.L D1
CLR.L D2
move.b #4,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*FIVE
if.w d1 <gt> #130 and.w d1 <lt> #180 then
if.w d2 <gt> #65 and.w d2 <lt> #115 then
CLR.L D1
CLR.L D2
MOVE.B #5,D1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*SIX
if.w d1 <gt> #130 and.w d1 <lt> #180 then
if.w d2 <gt> #120 and.w d2 <lt> #170 then
CLR.L D1
CLR.L D2
move.b #6,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*SEVEN
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #10 and.w d2 <lt> #60 then
CLR.L D1
CLR.L D2
move.b #7,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*EIGHT
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #65 and.w d2 <lt> #115 then
CLR.L D1
CLR.L D2
move.b #8,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
BRA EXIT
endi
endi
*NINE
if.w d1 <gt> #75 and.w d1 <lt> #125 then
if.w d2 <gt> #120 and.w d2 <lt> #170 then
CLR.L D1
CLR.L D2
move.b #9,d1
MOVE.B #3,D0
TRAP #15
MOVE.L NUM,D2
bsr APPEND
endi
endi
EXIT
RTE
*VAR--------------------------------------------
CLR_L DC.W 10
CLR_T DC.W 240
CLR_W DC.W 50
CLR_H DC.W 50
EQU_L DC.W 120
EQU_T DC.W 240
EQU_W DC.W 50
EQU_H DC.W 50
DIV_L DC.W 175
DIV_T DC.W 75
DIV_W DC.W 50
DIV_H DC.W 50
MUL_L DC.W 175
MUL_T DC.W 130
MUL_W DC.W 50
MUL_H DC.W 50
SUB_L DC.W 175
SUB_T DC.W 185
SUB_W DC.W 50
SUB_H DC.W 50
ADD_L DC.W 175
ADD_T DC.W 240
ADD_W DC.W 50
ADD_H DC.W 50
FIELD_L DC.W 10
FIELD_T DC.W 20
FIELD_W DC.W 215
FIELD_H DC.W 50
PA_L DC.W 230
PA_T DC.W 240
PA_W DC.W 50
PA_H DC.W 50
BAR_L DC.W 230
BAR_T DC.W 185
BAR_W DC.W 50
BAR_H DC.W 50
KEL_L DC.W 230
KEL_T DC.W 130
KEL_W DC.W 50
KEL_H DC.W 50
CEL_L DC.W 230
CEL_T DC.W 75
CEL_W DC.W 50
CEL_H DC.W 50
OR_L DC.W 285
OR_T DC.W 75
OR_W DC.W 50
OR_H DC.W 50
AND_L DC.W 285
AND_T DC.W 130
AND_W DC.W 50
AND_H DC.W 50
XOR_L DC.W 285
XOR_T DC.W 185
XOR_W DC.W 50
XOR_H DC.W 50
XNOR_L DC.W 285
XNOR_T DC.W 240
XNOR_W DC.W 50
XNOR_H DC.W 50
ZERO_L DC.W 65
ZERO_T DC.W 240
ZERO_W DC.W 50
ZERO_H DC.W 50
ONE_L DC.W 10
ONE_T DC.W 185
ONE_W DC.W 50
ONE_H DC.W 50
TWO_L DC.W 65
TWO_T DC.W 185
TWO_W DC.W 50
TWO_H DC.W 50
THREE_L DC.W 120
THREE_T DC.W 185
THREE_W DC.W 50
THREE_H DC.W 50
FOUR_L DC.W 10
FOUR_T DC.W 130
FOUR_W DC.W 50
FOUR_H DC.W 50
FIVE_L DC.W 65
FIVE_T DC.W 130
FIVE_W DC.W 50
FIVE_H DC.W 50
SIX_L DC.W 120
SIX_T DC.W 130
SIX_W DC.W 50
SIX_H DC.W 50
SEVEN_L DC.W 10
SEVEN_T DC.W 75
SEVEN_W DC.W 50
SEVEN_H DC.W 50
EIGHT_L DC.W 65
EIGHT_T DC.W 75
EIGHT_W DC.W 50
EIGHT_H DC.W 50
NINE_L DC.W 120
NINE_T DC.W 75
NINE_W DC.W 50
NINE_H DC.W 50
*RECTANGLE TEXT----------------
CLR_TEXT DC.B 'CE ',0
EQU_TEXT DC.B ' = ',0
DIV_TEXT DC.B ' / ',0
MUL_TEXT DC.B ' X ',0
SUB_TEXT DC.B ' - ',0
ADD_TEXT DC.B ' + ',0
PA_TEXT DC.B 'Pa',0
BAR_TEXT DC.B 'BAR',0
KEL_TEXT DC.B 'KEL',0
CEL_TEXT DC.B 'CEL',0
OR_TEXT DC.B 'OR',0
AND_TEXT DC.B 'AND',0
XOR_TEXT DC.B 'XOR',0
XNOR_TEXT DC.B 'XNOR',0
ZERO_text DC.B ' 0 ',0
ONE_text DC.B ' 1 ',0
TWO_text DC.B ' 2 ',0
THREE_text DC.B ' 3 ',0
FOUR_text DC.B ' 4 ',0
FIVE_text DC.B ' 5 ',0
SIX_text DC.B ' 6 ',0
SEVEN_text DC.B ' 7 ',0
EIGHT_text DC.B ' 8 ',0
NINE_text DC.B ' 9 ',0
NUM DC.L 0
NUM2 DC.L 0
OPRAND DC.B 0
RETURN DC.B $d,$a,0
END START
[Edit: Code tags added by admin]