home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / programming / wackytalky_2 / Developer / Documents / DLRInfo (.txt) < prev   
Encoding:
RISC OS BBC BASIC V Source  |  1996-02-21  |  2.9 KB  |  124 lines

  1.  DLRInfo v0.03, by GUS (21Feb1996.00:55:53)
  2.  ~~~~~~~~~~~~~
  3.  Provides information on DLRs.
  4. =*RMEnsure Wacky-Talky 0.70 Error "Wacky-Talky not loaded"
  5. *>Remove <DLRInfo>
  6. "WT_CallDLRD",dlr$,"WT_JumpWord0" 
  7. dlr$,3)="-q " 
  8. dlr$,3)="-Q " 
  9. "WT_CallDLRD",dlr$,"WT_JumpWord0" 
  10. dlr$,3)="-f " 
  11. dlr$,3)="-F " 
  12.   show_code%=0
  13.   dlr$=
  14. dlr$,4,255)
  15. "WT_CallDLRD",dlr$,"WT_NoSpace0" 
  16.   show_code%=-1
  17. dlr$="" 
  18.  &dead,"Syntax: *DLRInfo
  19. [-f] <DLR
  20. name>|&<DLR Id>"
  21. &606c0 :
  22.  safe Hourglass_On ;-)
  23. ------------------------------------------------ Get info
  24. "WT_DLRInfoD",&45524F4D,dlr$ 
  25.  module_name%,dlr%,,info%
  26. "WT_Tokenise",,dlr$ 
  27. "WT_Detokenise",,id%,1 
  28. ,dlr_name% :
  29.  Id to name
  30. ------------------------------------------------ Interpret info...
  31. dlr$=
  32. getname(dlr_name%)
  33. *Echo { > <Wimp$Scrap> }
  34. &+title$="DLR: "+dlr$+" (Id: &"+
  35. ~id%+")"
  36. command("Echo "+title$)
  37. command("Echo "+
  38. title$,"="))
  39. command("Echo")
  40. *'module_name$=
  41. getname(module_name%)
  42. command("Echo DLR provided by WT module: '"+module_name$+"'")
  43. command("Echo")
  44. ways$="Ways to use: "
  45.  (info% 
  46.  %100)=0 ways$+="Link, "
  47.  (info% 
  48.  %10)=0 ways$+="Call, "
  49.  info%>>8 ways$+="Include, "
  50.  info% 
  51.  %1000 ways$+="as SWI (&"+
  52. ~((id%
  53. ((id%
  54. &ff)>>2))+"), "
  55. ways$=
  56. ways$,
  57. ways$-2)+"."
  58. command("Echo "+ways$)
  59. info% 
  60.  %11000 
  61.   when$=""
  62. (info% 
  63.  %100)=0 when$="linked"
  64. info%>>8 
  65. 9!    
  66.  when$<>"" when$+=" or "
  67.     when$+="included"
  68.   must$=""
  69. info% 
  70.  %10000 must$="R11 must be &"+
  71. info% 
  72.  %1000 
  73. ?!    
  74. must$<>"" must$+=" and "
  75.     must$+="R12 must be pointer to the default workspace of WT module '"+module_name$+"', use SWI WT_DLRInfo to get that (in exit_R2)"
  76. command("Echo")
  77. C.  full$="NOTE: When "+when$+", "+must$+"."
  78.     cut%=50
  79. F+    
  80. cut%<
  81. full$ 
  82. full$,cut%,1)<>" "
  83.       cut%+=1
  84. H        
  85. I&    
  86. command("Echo "+
  87. full$,cut%))
  88. J%    full$="
  89. full$,cut%+1)
  90. full$="
  91.  (info%>>>8)<>0 
  92.  show_code% 
  93. command("Echo")
  94. P;  title$="DLR body... ("+
  95. ((info%>>>8)-4)+" + 4 bytes)"
  96. command("Echo "+title$)
  97. command("Echo "+
  98. title$,"~"))
  99. command("Memoryi "+
  100. ~dlr%+" + "+
  101. ~((info%>>>8)-4))
  102. &606c1 :
  103.  safe Hourglass_Off ;-)
  104. 8,5,"<Wimp$Scrap>" 
  105. ,,,,length%
  106. length%<1024*2 
  107. Z4  *Taskwindow "Type <Wimp$Scrap>" -display -quit
  108.   *SetType <Wimp$Scrap> fff
  109. ("SetMacro DLRInfo <Wimp$ScrapDir>."+"DI-"+
  110. ~id%,10))
  111.   *>Remove <DLRInfo>
  112. _$  *Rename <Wimp$Scrap> <DLRInfo>
  113.   *Filer_Run <DLRInfo>
  114. command(comm$)
  115. (comm$+" { >> <Wimp$Scrap> }")
  116. getname(adr%)
  117. name$
  118. name$=""
  119. ?adr%>32
  120.   name$+=
  121. ?adr%
  122.   adr%+=1
  123. =name$
  124.