home *** CD-ROM | disk | FTP | other *** search
/ The CDPD Public Domain Collection for CDTV 3 / CDPDIII.bin / fish / 761-770 / ff764 / cli-tools / isresident.s < prev    next >
Text File  |  1992-11-21  |  1KB  |  69 lines

  1.     incdir "ram:include/"
  2.     include exec_lib.i
  3.     include dos_lib.i
  4.  
  5. _LVOFindSegment = -$30c
  6.  
  7. START
  8.     clr.b    -1(a0,d0.l)        CR löschen
  9.     movea.l    a0,a2            Adr. retten
  10.  
  11.     moveq    #0,d7            init. Return-Code
  12.  
  13.     lea    DOSName(pc),a1        DOS-Lib öffnen
  14.     moveq    #36,d0            mind. Version 36
  15.     CALLEXEC OpenLibrary
  16.     tst.l    d0
  17.     beq.s    ende1
  18.     movea.l    d0,a5            a5: DOSBase
  19.  
  20.     moveq    #'?',d0
  21.     cmp.b    (a2),d0
  22.     beq.s    usage
  23.  
  24.     CALLLIB Forbid            Forbid muß sein
  25.  
  26.     move.l    a2,d1
  27.     moveq    #0,d2
  28.     moveq    #0,d3            bei "eigenen" Residents gucken
  29.     movea.l    a5,a6
  30.     CALLLIB FindSegment
  31.     tst.l    d0
  32.     bne.s    .found
  33.  
  34.     move.l    a2,d1
  35.     moveq    #0,d2
  36.     moveq    #1,d3            interne Residents checken
  37.     CALLLIB FindSegment
  38.     tst.l    d0
  39.     bne.s    .found
  40.     moveq    #5,d7            WARN-Code setzen, da NICHT gefunden
  41. .found
  42.  
  43.     CALLEXEC Permit
  44. ende:
  45.     movea.l    a5,a1            DOS-Lib schießen
  46.     CALLLIB CloseLibrary
  47. ende1:    move.l    d7,d0            Ende des Progs
  48.     rts
  49.  
  50. usage:
  51.     movea.l    a5,a6
  52.     CALLLIB Output
  53.     move.l    d0,d1
  54.     lea    text(pc),a0
  55.     move.l    a0,d2
  56.     moveq    #textlen,d3
  57.     CALLLIB Write
  58.     bra.s    ende
  59.  
  60. ;*** Daten ***
  61.  
  62. DOSName: dc.b "dos.library",0
  63.     dc.b "$VER: IsResident 1.01 (27.5.92  © Thies Wellpott)",0
  64. text:    dc.b "Usage: IsResident name",$a
  65.     dc.b "Return code will be 5 (WARN) if name is not found",$a
  66. textlen = *-text
  67.     even
  68.  
  69.