home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 2 / DATAFILE_PDCD2.iso / utilities3 / _acornlogo / !ACORNLOGO / ORIGINALRI (.txt) < prev   
RISC OS BBC BASIC V Source  |  1996-08-24  |  2KB  |  97 lines

  1.  > !RunImage
  2.      !AcornLogo -- put Acorn's logo on the backdrop
  3.       (C) 1994 Luke Hutchison (lukeh@kcbbs.gen.nz)
  4.           -->  This was a QUICK HACK :-)  <--
  5.  (Let me know if you can find a better way of doing it!)
  6. Zoff_x% = 400: off_y% = 36   :
  7.  Position of logo relative to top right corner of screen
  8. @name$=
  9. 160               :
  10.  Filename of icon is a hard-space
  11.  block% 1024
  12. $block% = "TASK"
  13.  "Wimp_Initialise", 300, !block%, "Pinboard Acorn logo" 
  14.  ,taskID%
  15. =!block%=&400c1: block%!8=-1: 
  16.  "Wimp_AddMessages",block%
  17. quit% = 
  18. find_pb
  19.  quit% 
  20.  "Wimp_CloseDown",taskID%:
  21. pin_acorn
  22. mask% = 1
  23.  "Wimp_Poll", mask%, block% 
  24.  reason%
  25.  reason% 
  26.  17,18:
  27. C      
  28.  block%!16 = &400c1 
  29. pin_acorn   :
  30.  Message_ModeChange
  31. =      
  32.  block%!16 = 0 
  33.  quit%=
  34.            :
  35.  Message_Quit
  36. quit%
  37.  "Wimp_CloseDown",taskID%
  38. find_pb
  39.   val%=0: found%=
  40. (?    
  41.  "TaskManager_EnumerateTasks",val%, block%, 16 
  42.  val%
  43. )i    
  44.  !(block%!4) = &626e6950 
  45.  !((block%!4)+4) = &6472616f 
  46.  found%=
  47.  found task name "Pinboard"
  48.  val%<0 
  49.  found%
  50.  found% 
  51.     pb_handle%=!block%
  52.     !block%=1
  53. 0N    $(block%+4)="Pinboard must be active to run !AcornLogo -- quitting"+
  54. 12    
  55.  "Wimp_ReportError",block%,5,"!BackLogo"
  56.     quit% = 
  57. pin_acorn
  58.   t1$="pipe:$.~temp1"
  59.   t2$="pipe:$.~temp2"
  60.   F%=
  61.   !block% = 32
  62.   block%!12=0
  63. <*  block%!16=10  :
  64.  Message_SaveDesktop
  65.   block%!20=F%
  66.   block%!24=0
  67.  "Wimp_SendMessage",18,block%,pb_handle%   :
  68.  Make the pinboard save its state
  69.  "Wimp_Poll",0,block%
  70.   I%=
  71.   O%=
  72.   logo$=""
  73.     A$=
  74. H!    pos% = 
  75. A$,"."+name$+" ")
  76.  pos%<>0 
  77. J%      logo$ = 
  78. A$, pos%+1+
  79. name$)
  80. K        
  81.       
  82. #O%,A$
  83. M        
  84.  change coordinates for Acorn logo
  85. QP  !block% = 4: block%!4 = 5: block%!8 = 130: block%!12 = 131: block%!16 = -1
  86.  "OS_ReadVduVariables", block%, block%
  87. S&  max_x% = (block%!8) << (!block%)
  88. T(  max_y% = (block%!12) << (block%!4)
  89.  logo$="" 
  90.  logo$="Pin <AcornLogo$Dir>."+name$+" "
  91.  #O%, logo$ + 
  92. (max_x% - off_x%) + " " + 
  93. (max_y% - off_y%)
  94.  "Settype "+t2$+" Obey"
  95.  "Wimp_StartTask", "Run "+t2$            :
  96.  Restore backdrop
  97.