Télécharger ooowp1.eso

Retour à la liste

Numérotation des lignes :

ooowp1
  1. C OOOWP1 SOURCE PV090527 26/04/24 08:23:32 12524
  2. SUBROUTINE OOOWP1 (LRET,IRET,HARG,PSEG,HTYPE,HPOINT)
  3. C
  4. C IMPRESSION DE L'ETAT D'UN SEGMENT : SEGPRT , PSEG*NMAX
  5. C ET DE SON POINTEUR
  6. C
  7. C ->LRET RETOUR D'ERREUR
  8. C = 1 SI SEGMENT SUPPRIME(POINTEUR NUL)
  9. C = 2 SI SEGMENT ACTIF
  10. C = 3 SI SEGMENT INACTIF EN MEMOIRE
  11. C = 4 SI SEGMENT INACTIF SUR DISQUE
  12. C
  13. C IRET 0
  14. C
  15. C HARG 'NOM_SUBROUTINE NUMERO_LIGNE NOM_SEGMENT '
  16. C
  17. C PSEG POINTEUR DU SEGMENT
  18. C
  19. C HTYPE NOM DU SEGMENT DESIGNE
  20. C
  21. C HPOINT NOM DU POINTEUR DU SEGMENT
  22. C
  23. C PROGRAMMEUR : M JACQ
  24. C MODIFIE : 03/04/89 ARGUMENTS HTYPE ET HPOINT REORDONNES
  25. C MODIFIE : 03/04/89 ARGUMENTS IRET ET HARG EN PLUS
  26. C MODIFIE : 03/04/89 ON A RETIRE LES ENTRY OOOWP*
  27. C OU *=H,L,M,N,I,J,K,R,D,Q,C,Y,Z,P
  28. C MODIFIE : 10/04/89 ERREUR : ARGUMENTS DE OOOWP2
  29. C
  30. C-----------------------------------------------------------------------
  31. %INC IOOWCOM
  32. %INC IOOUNIT
  33. CHARACTER *(*) HARG , HPOINT , HTYPE
  34. SEGMENT PPPP(0)
  35. POINTEUR PSEG.PSEG
  36. C
  37. MACRO , (SUPPRIME , ACTIF , INACTIF_EN_MEMOIRE
  38. * , INACTIF_SUR_DISQUE )
  39. C
  40. if (thread) call ooogll(1)
  41. KASINS = INSTRUCTION_SEGPRT
  42. HDIA = HARG
  43. LDIA = LEN(HARG)
  44. C MESSAGE D'ERREUR SI PSEG INVALIDE
  45. CALL OOOVPN (PSEG)
  46. C
  47. IF(HPOINT.NE.HTYPE) THEN
  48. WRITE(JLST,1010) HPOINT(1:MIN(30,LEN(HPOINT))),HTYPE,PSEG
  49. ELSE
  50. WRITE(JLST,1000) HPOINT(1:MIN(30,LEN(HPOINT))),PSEG
  51. ENDIF
  52. C
  53. IF(PSEG.EQ.0) THEN
  54. LRET = SUPPRIME
  55. ELSE
  56. CALL OOOETA(PSEG,IETA,IMOD)
  57. LRET=IETA+1
  58. ENDIF
  59. C
  60. CASE , LRET
  61. WHEN , SUPPRIME
  62. WRITE(JLST,*) ' ETAT : SUPPRIME'
  63. WHEN , ACTIF
  64. WRITE(JLST,*) ' ETAT : ACTIF'
  65. WHEN , INACTIF_EN_MEMOIRE
  66. SEGACT , PSEG
  67. WRITE(JLST,*) ' ETAT : INACTIF EN MEMOIRE'
  68. WHEN , INACTIF_SUR_DISQUE
  69. SEGACT , PSEG
  70. WRITE(JLST,*) ' ETAT : INACTIF SUR DISQUE'
  71. ENDCASE
  72. if (thread) call ooogll(0)
  73. RETURN
  74. C
  75. ENTRY OOOWP2 (LRET,IRET,HARG,PSEG)
  76. C
  77. C RETOUR A L'ETAT ANTERIEUR DU SEGMENT
  78. C
  79. CASE , LRET
  80. WHEN , SUPPRIME , ACTIF
  81. WHEN , INACTIF_EN_MEMOIRE , INACTIF_SUR_DISQUE
  82. SEGDES , PSEG
  83. ENDCASE
  84. C
  85. 1000 FORMAT(////,1X,' EDITION DU SEGMENT ',A,' POINTEUR '
  86. 1 ,I9,/,1X,72('*'),//)
  87. 1010 FORMAT(////,1X,' EDITION DU SEGMENT ',A,'.',A,' POINTEUR '
  88. 1 ,I9,/,1X,72('*'),//)
  89. END
  90.  
  91.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales