home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 3 / Meeting_Pearls_III.iso / Pearls / comm / Networking / ProNET / source.lzx / utilities / pronet-run.s < prev    next >
Text File  |  1990-02-15  |  2KB  |  124 lines

  1. ;: pronet-run.s
  2. ;:
  3. ;: Startet Programme auf dem anderen Rechner
  4. ;:
  5. ;: 26-10-94
  6. ;:
  7. ;: 18-06-95    unitnumber argument
  8.  
  9.         include    "exec/exec.i"
  10.         include    "A:ProNET/include/devices/pronet.i"
  11.         include    "A:ProNET/source/network.i"
  12.         include    "exec_lib.i"
  13.         include    "A:OSmacros.i"
  14.  
  15. j        cmp.l    #2,d0
  16.         bcs    nopronet
  17.  
  18.         subq.l    #1,d0    ;remove CR
  19.  
  20.         lea    buffer,a1
  21. .lp        move.b    (a0)+,(a1)+
  22.         subq.l    #1,d0
  23.         bne.s    .lp
  24.         clr.b    (a1)+
  25.  
  26.         lea    buffer,a0
  27.         bsr    dec2long
  28.         move.l    d1,unit
  29.  
  30.         move.b    (a0)+,d0
  31.         beq.s    nopronet
  32.         cmp.b    #'"',d0
  33.         bne.s    nopronet
  34.         move.l    a0,a5
  35.         moveq    #-1,d5
  36. .count        tst.b    (a0)+
  37.         dbeq    d5,.count
  38.         neg.w    d5
  39.         subq.w    #1,d5
  40.         ext.l    d5
  41.         clr.b    -(a0)
  42.         clr.b    -(a0)
  43.  
  44.         move.l    4.w,a6
  45.         bsr    startpronet
  46.         tst.w    d0
  47.         bne    nopronet
  48.  
  49.         move.l    4.w,a6
  50.         move.l    pronetio(pc),a1
  51.         move.w    #0,pnr_NetDestPort(a1)
  52.         move.w    #PND_WRITE,IO_COMMAND(a1)
  53.         move.l    #testbuf,pnr_Data1(a1)
  54.         move.l    #4,pnr_Length1(a1)
  55.         move.l    a5,pnr_Data2(a1)
  56.         move.l    d5,pnr_Length2(a1)
  57.         LIBCALL    DoIO
  58.  
  59.         bsr    stoppronet
  60. nopronet    moveq    #0,d0
  61.         rts
  62.  
  63.         dc.b    "$VER: pronet-run 34.1 (18-06-95)",13,10,0
  64.         even
  65.  
  66. startpronet    moveq    #pnr_Size,d0
  67.         bsr    GetIORequest
  68.         move.l    d0,pronetio
  69.         beq    spnoioreq
  70.         bsr    CreatePort
  71.         move.l    d0,msgport
  72.         beq    spnomsgport
  73.         lea    pronetname,a0
  74.         move.l    unit(pc),d0
  75.         moveq    #0,d1
  76.         move.l    pronetio(pc),a1
  77.         move.w    #PNP_NEXTFREE,pnr_NetSourcePort(a1)
  78.         move.l    msgport(pc),pnr_MsgPort(a1)
  79.         move.l    4.w,a6
  80.         LIBCALL    OpenDevice
  81.         tst.l    d0
  82.         bne    spnodev
  83.         moveq    #0,d0
  84.         rts
  85.  
  86. stoppronet    move.l    4.w,a6
  87.         move.l    pronetio(pc),a1
  88.         LIBCALL    CloseDevice
  89. spnodev        move.l    msgport(pc),a0
  90.         bsr    DeletePort
  91. spnomsgport    move.l    pronetio(pc),a0
  92.         bsr    FreeIORequest
  93. spnoioreq    moveq    #-1,d0
  94.         rts
  95.  
  96. pronetname    dc.b    "pronet.device",0
  97.         even
  98. testbuf        dc.l    ACTION_RUN
  99.  
  100. pronetio    dc.l    0
  101. msgport        dc.l    0
  102. unit        dc.l    0
  103.  
  104. dec2long    ; konvertiert Dezimalstring ab (a0) zu Longword in D1 !!
  105.         moveq    #0,d1
  106. .loop        moveq    #0,d0
  107.         move.b    (a0)+,d0
  108.         sub.b    #"0",d0
  109.         cmp.b    #9,d0
  110.         bhi.s    .oki
  111.         move.l    d1,d2
  112.         lsl.l    #3,d1
  113.         add.l    d2,d1
  114.         add.l    d2,d1
  115.         add.l    d0,d1
  116.         bra.s    .loop
  117. .oki        rts
  118.  
  119.         include    "A:ProNET/source/devio.s"
  120.  
  121.         section    b,bss
  122.  
  123. buffer        ds.b    256
  124.