home *** CD-ROM | disk | FTP | other *** search
/ Die Ultimative Software-P…i Collection 1996 & 1997 / Die Ultimative Software-Pakete CD-ROM fur Atari Collection 1996 & 1997.iso / i / internet / software / lprsr / hpspoo.s < prev    next >
Encoding:
Text File  |  1993-08-02  |  2.3 KB  |  105 lines

  1. **********************************************************************
  2. *       program hpspoo.s         residenter modul zur umlenkung      *
  3. *       pm 7/93                 des biostraps 13.implementiert    *
  4. *       (pure-c)                 druck-dämon für *.pco-files.        *
  5. **********************************************************************
  6.  
  7.         export    oldgem
  8.         export    grpgem
  9.         export    oldbios
  10.         export    grpbios
  11.         import    gembuffer
  12.         import    gemclose
  13.         import    biosbuffer
  14.         import  spool
  15.         import  flag
  16.         
  17.         .text
  18.  
  19. *-------------------------------*
  20. *    residenter programmteil    *
  21. *-------------------------------*
  22.  
  23.         dc.b "XBRAHPPD"
  24. oldgem: dc.l    0
  25.        
  26. grpgem: tst.w    flag
  27.         bne        dogem3
  28.         move.w  (a7),d0          * test user/super mode
  29.         btst    #13,d0
  30.         bne.b   sup1
  31.         move.l  usp,a0
  32.         bra.b   tst1
  33.  
  34. sup1:   lea     6(a7),a0
  35. tst1:   cmp.w   #17,(a0)          * is it Cprnos
  36.         bne     dogem2
  37.         move.w    #-1,d0
  38.         rte
  39. dogem2:
  40.         cmp.w    #5,(a0)
  41.         bne        dogem4
  42.         move.w    2(a0),d0
  43.         movem.l    a1/d1-d2,-(a7)
  44.         jsr        gembuffer
  45.         movem.l  (a7)+,a1/d1-d2
  46.         bra.b    dogem3
  47. dogem4:
  48.         cmp.w    #$40,(a0)
  49.         bne.b    dogem5
  50.         cmp.w    #-3,2(a0)
  51.         bne.b    dogem5
  52.         move.l  4(a0),d0
  53.         move.l  8(a0),a0
  54.           jsr        gembuffer
  55.           rte
  56. dogem5:
  57.         cmp.w    #$3E,(a0)
  58.         bne.b    dogem3
  59.         cmp.w    #-3,2(a0)
  60.         bne.b    dogem3
  61.           jsr        gemclose
  62.           rte
  63. dogem3:
  64.         move.l    oldgem,-(a7)
  65.         rts
  66.  
  67.                   
  68.         dc.b "XBRAHPPD"
  69.  
  70. oldbios: dc.l    0
  71.        
  72. grpbios:
  73.         tst.w    flag
  74.         bne        dobios
  75.         move.w  (a7),d0          * test user/super mode
  76.         btst    #13,d0
  77.         bne.b   sup
  78.         move.l  usp,a0
  79.         bra.b   tst
  80.  
  81. sup:    lea     6(a7),a0
  82. tst:    cmp.w   #3,(a0)          * is it Bconout
  83.         bne     dobios1
  84.         cmp.w    #0,2(a0)      * PRN:
  85.         bne     dobios
  86.         move.w    4(a0),d0
  87.         jsr        biosbuffer
  88.         rte
  89.  
  90. dobios1: 
  91.         cmp.w   #8,(a0)      * is it Bconostat
  92.         bne     dobios
  93.         cmp.w    #0,2(a0)      * PRN:
  94.         bne     dobios
  95.         move.w  #-1,d0
  96.         rte
  97.  
  98. dobios: move.l  oldbios,-(a7)
  99.         rts
  100.  
  101.         .data
  102.  
  103.         end
  104.  
  105.