home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 22 / AACD 22.iso / AACD / Programming / powerd / lib / powerd.lha / powerd_ppc / FileLength.ass < prev    next >
Encoding:
Text File  |  1980-04-15  |  1.1 KB  |  68 lines

  1.     .text
  2.     .sdreg    r2
  3.     .align    2
  4. _FileLength:
  5. ###############################################################################
  6. # name           offset
  7. # l              0+0(r13)
  8. # fib            4+0(r13)
  9. # lock           264+0(r13)
  10. # args ###########################
  11. # name           268+0(r13)
  12.     mflr    r0
  13.     stw    r0,8(r1)
  14.     stwu    r1,-300(r1)
  15.     stw    r13,24(r1)
  16.     mr    r13,r1
  17.     stw    r3,268+28(r13)
  18.     li    r3,-1
  19.     stw    r3,0+28(r13)
  20. if0:
  21.     lwz    r3,268+28(r13)
  22.     li    r4,-2
  23.     bl    _Lock    # Lock
  24.     stw    r3,264+28(r13)
  25.     lwz    r0,264+28(r13)
  26.     mr.    r0,r0
  27.     beq    end0
  28. if2:
  29.     lwz    r3,264+28(r13)
  30.     addi    r4,r13,4+28
  31.     bl    _Examine    # Examine
  32.     mr.    r3,r3
  33.     beq    end2
  34.     addi    r4,r13,4+28
  35.     lwz    r3,124(r4)
  36.     stw    r3,0+28(r13)
  37. end2:
  38.     lwz    r3,264+28(r13)
  39.     bl    _UnLock    # UnLock
  40. end0:
  41. FileLengthend:
  42.     lwz    r3,0+28(r13)
  43. FileLengthfinish:
  44.     lwz    r13,24(r1)
  45.     addi    r1,r1,300
  46.     lwz    r0,8(r1)
  47.     mtlr    r0
  48.     blr
  49.  
  50.     .global    _FileLength
  51.     .type    _FileLength,2
  52.     .size    _FileLength,$-_FileLength
  53. FileLength_local:
  54.     .global    @_FileLength_local
  55.     .extern    _Examine
  56.     .extern    _Lock
  57.     .extern    _UnLock
  58.     .tocd
  59.     .extern    _PowerPCBase
  60.     .extern    _stdin
  61.     .extern    _stdout
  62.     .extern    _arg
  63.     .extern    _GfxBase
  64.     .extern    _IntuitionBase
  65.     .extern    _DOSBase
  66.     .extern    _ExecBase
  67.     .data
  68.