home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / program / compiler / nasm20b / nasm_src / lib / src / itoa.s65 < prev    next >
Text File  |  1993-01-19  |  1KB  |  58 lines

  1.    .include #macros
  2.    .include #16bit
  3.    
  4.    .if .not .def TEST
  5.       .zext    _string1
  6.       .zext    _value
  7.    .else
  8.  
  9.       .include #cio
  10.  
  11. _string1 == $F0
  12. _value   == $F2
  13. _tmp1    == $F4
  14. _tmp2    == $F6
  15. _tmp3    == $F8
  16.  
  17.  
  18. main:
  19.       dpoke    _value,2456
  20.       dpoke    _string1,buffer
  21.       jsr      itoa
  22.       print    0,header,255,@p1+@p2+@p3
  23.       dpoke    _value,60001
  24.       dpoke    _string1,buffer
  25.       jsr      itoa
  26.       print    0,header,255,@p1+@p2+@p3
  27.       brk
  28.  
  29.  
  30. header:
  31.       .byte    "Value = "
  32. buffer:
  33.       .ds      7
  34.       .byte    155,0
  35.  
  36.       .endif
  37.  
  38. ;; -------------------------------------------------------------
  39. ;; Convert a signed word into ASCII.
  40. ;; Parameters via zeropage STRING1 and VALUE. Needs also
  41. ;; 6 bytes of temporary zeropage storage.
  42. ;; -------------------------------------------------------------
  43. itoa:
  44.         ldy    #0
  45.         lda    _value+1
  46.         bpl    :ok
  47.         
  48.         neg.w  _value,$FFFF
  49.         lda    #'-
  50.         sta    (_string1),y
  51.         iny
  52. :ok
  53.         jsr    _utoa
  54.         lda    #0
  55.         sta    (_string1),y
  56.         rts
  57.  
  58.