home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / DRIVERS / SRC / ptys.lzh / cpty.a < prev    next >
Text File  |  1990-03-17  |  3KB  |  144 lines

  1. *        This software is copyright (C) 1989 by Reimer Mellin        *
  2. *                                                                    *
  3. *        Permission is granted to reproduce and distribute           *
  4. *        this package by any means so long as no fee is charged      *
  5. *        above a nominal handling fee and so long as this            *
  6. *        notice is always included in the copies.                    *
  7. *        Commerical use or incorporation into commercial software    *
  8. *        is prohibited without the written permission of the         *
  9. *        author.                                                     *
  10. *                                                                    *
  11. *        Other rights are reserved except as explicitly granted      *
  12. *        by written permission of the author.                        *
  13. *                Reimer Mellin                                       *
  14. *                                                                    *
  15. *                Sulenstr.8                                          *
  16. *                D-8000 Muenchen 71 (Federal Republic of Germany)    *
  17. *                                                                    *
  18. *           EMAIL:                                                   *
  19. *                mellin@lan.informatik.tu-muenchen.dbp.de            *
  20. *                ram@altger.UUCP                                     *
  21. *                ....!pyramid!tmpmbx!doitcr!ramsys!ram (home)        *
  22. *                                                                    *
  23. *
  24. * $Id: cpty.a_v 1.2.1.1 89/09/04 13:12:14 ram Exp $
  25. *
  26. * $Log:    cpty.a_v $
  27. * Revision 1.2.1.1  89/09/04  13:12:14  ram
  28. * added some comments
  29. * Revision 1.2  89/08/31  12:27:06  ram
  30. * Copyright-message added
  31. *
  32.  
  33.  nam PtyMan
  34.  ttl PtyMan - Pty File Manager
  35.  
  36.  use defsfile
  37.  
  38. Edition set 2
  39.  
  40. Typ_Lang set (FlMgr<<8)+Objct
  41. Attr_Rev set (ReEnt+SupStat)<<8+0
  42.  
  43. PD_Sysglob equ $22
  44. PD_Errno   equ $1e
  45.  
  46.  psect PtyMan,Typ_Lang,Attr_Rev,Edition,0,Entry
  47.  
  48. errno: equ $1e ; !!! PD_Errno in /DEFS/sysio.a !!!
  49. * dadurch koennen C-Routinen die errno setzen, ganz normal genutzt
  50. * werden !!
  51.  
  52.  page
  53. Entry:
  54.  dc.w _Create-Entry
  55.  dc.w _Open-Entry
  56.  dc.w _MakDir-Entry
  57.  dc.w _ChdDir-Entry
  58.  dc.w _Delete-Entry
  59.  dc.w _Seek-Entry
  60.  dc.w _Read-Entry
  61.  dc.w _Write-Entry
  62.  dc.w _ReadLn-Entry
  63.  dc.w _WriteLn-Entry
  64.  dc.w _GetStat-Entry
  65.  dc.w _SetStat-Entry
  66.  dc.w _Close-Entry
  67.  
  68. _MakDir:
  69. _ChdDir:
  70. _Delete:
  71.  move.w #E$BMode,d1
  72.  ori.w #Carry,ccr
  73.  rts
  74.  
  75. _Seek:
  76.  andi.w #NoCarry,ccr
  77.  rts
  78.  
  79. _Read:
  80.  movem.l d0-d7/a0-a6,-(sp)
  81.  bsr.s _setup
  82.  bra Read
  83.  
  84. _ReadLn:
  85.  movem.l d0-d7/a0-a6,-(sp)
  86.  bsr.s _setup
  87.  bra ReadLn
  88.  
  89. _Write:
  90.  movem.l d0-d7/a0-a6,-(sp)
  91.  bsr.s _setup
  92.  bra Write
  93.  
  94. _WriteLn:
  95.  movem.l d0-d7/a0-a6,-(sp)
  96.  bsr.s _setup
  97.  bra WriteLn
  98.  
  99. _Create:
  100. _Open:
  101.  movem.l d0-d7/a0-a6,-(sp)
  102.  bsr.s _setup
  103.  bra Open
  104.  
  105. _GetStat:
  106.  movem.l d0-d7/a0-a6,-(sp)
  107.  bsr.s _setup
  108.  bra GetStat
  109.  
  110. _SetStat:
  111.  movem.l d0-d7/a0-a6,-(sp)
  112.  bsr.s _setup
  113.  bra SetStat
  114.  
  115. _Close:
  116.  movem.l d0-d7/a0-a6,-(sp)
  117.  bsr.s _setup
  118.  bra Close
  119.  
  120. _setup
  121.  move.l a6,PD_Sysglob(a1) ; System Globals
  122.  move.l a1,a6 ; Globals fuer C
  123.  move.l (sp)+,a0 ; Return-Adresse
  124.  move.l a4,d0 ; Process-Desciptor
  125.  move.l a5,d1 ; User Stack Frame
  126.  jsr (a0) ; Ruecksprung
  127.  
  128.  tst.l d0
  129.  beq.s _setup90 ; kein Fehler!
  130.  
  131.  movem.l (sp)+,d0-d7/a0-a6
  132.  move.l PD_Errno(a1),d1
  133.  ori.w #Carry,ccr
  134.  rts
  135.  
  136. _setup90
  137.  movem.l (sp)+,d0-d7/a0-a6
  138.  andi.w #NoCarry,ccr
  139.  rts
  140.  
  141.   ends
  142.