home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 3 / AACD03.BIN / AACD / Utilities / BackClock / sources / backclock / dtb.s < prev    next >
Text File  |  1999-08-04  |  1KB  |  66 lines

  1.   incdir  asmone:
  2.   include devpacmacros.i
  3.   include stormc:source/horloge/dtb.i
  4.  
  5.   XDEF  _DateToByte
  6.  
  7. *******************************************************************************
  8. *
  9. * _DateToByte
  10. *  convertit une chaine ascii en octets
  11. *
  12. * entrée:
  13. *  a0 : adresse de la chaine ASCII
  14. *  a1 : adresse de la structure idWin
  15. *
  16. *******************************************************************************
  17.  
  18. ;d5   h
  19. ;d6   m
  20. ;d7   s
  21.  
  22. ; section prg,code
  23.  
  24. _DateToByte
  25.   movem.l d0-d7/a0-a6,-(a7)
  26.   move.w  (a0)+,d5
  27.   move.b  (a0)+,d7
  28.   move.w  (a0)+,d6
  29.   move.b  (a0)+,d7
  30.   move.w  (a0)+,d7
  31.   move.w  d5,d0
  32.   bsr.s convert 
  33.   move.w  d0,heu(a1)
  34.   move.w  d6,d0
  35.   bsr.s convert
  36.   move.w  d0,min(a1)
  37.   move.w  d7,d0
  38.   bsr.s convert
  39.   move.w  d0,sec(a1)
  40.   movem.l (a7)+,d0-d7/a0-a6
  41.   rts
  42.  
  43. convert
  44.   ; e :d0 uword (ascii)
  45.   ; s :d0 ubyte (hex)
  46.   movem.l d1-d2,-(a7)
  47.   move.w  d0,d2
  48.   lsr #8,d2
  49.   and.b #$f,d2
  50.   moveq #0,d3
  51.   move.b  d2,d3
  52.   lsl #4,d2
  53.   move.w  d0,d1
  54.   and.w #$f,d1
  55.   or.b  d2,d1
  56.   move.w  d1,d0
  57.   tst.b d3
  58.   beq.s .ok
  59.   sub.b #1,d3
  60. .dec1 sub.b #6,d0
  61.   dbra  d3,.dec1  
  62.  
  63. .ok movem.l (a7)+,d1-d2
  64.   rts
  65.  
  66.