home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / sourcecode / various / icon_info.amos / icon_info.amosSourceCode
AMOS Source Code  |  1993-01-08  |  999b  |  47 lines

  1. Screen Open 0,640,200,2,Hires : Colour 1,$FFF : Flash Off 
  2. Global ICNBASE
  3. OPEN_LIBRARY["icon.library",0]
  4. ICNBASE=Param
  5. If ICNBASE=0
  6. Print "icon.library failed to open"
  7. End 
  8. End If 
  9. 'issue getdiskobject to read the icon
  10. DISKOBJECT["dh0:cando/cando"]
  11. DISKOBJ=Param
  12. If DISKOBJ=0
  13. Print "getdiskobject failed"
  14. KLOSE_LIBRARY[ICNBASE]
  15. End 
  16. End If 
  17. TLTYPE=Leek(DISKOBJ+54)
  18. Repeat 
  19. TLTYPE$=""
  20. N=0
  21. TL=Leek(TLTYPE)
  22. While Peek(TL+N)<>0
  23. TLTYPE$=TLTYPE$+Chr$(Peek(TL+N))
  24. Inc N
  25. Wend 
  26. Print TLTYPE$
  27. Add TLTYPE,4
  28. Until Len(TLTYPE$)=0
  29. Procedure DISKOBJECT[OBJECTNAME$]
  30. OBJECTNAME$=OBJECTNAME$+Chr$(0)
  31. OFFSET=-78
  32. GLUE$=Chr$($2C)+Chr$($53)+Chr$($4E)+Chr$($AE)
  33. GLUE$=GLUE$+Chr$(Peek(Varptr(OFFSET)+2))
  34. GLUE$=GLUE$+Chr$(Peek(Varptr(OFFSET)+3))
  35. GLUE$=GLUE$+Chr$($4E)+Chr$($75)
  36. Areg(0)=Varptr(OBJECTNAME$)
  37. Call Varptr(GLUE$),ICNBASE
  38. End Proc[Dreg(0)]
  39. Procedure OPEN_LIBRARY[LIB$,VERS]
  40. LIB$=LIB$+Chr$(0)
  41. Dreg(0)=0
  42. Areg(1)=Varptr(LIB$)
  43. End Proc[Execall(-552)]
  44. Procedure KLOSE_LIBRARY[LIB]
  45. Areg(1)=LIB
  46. R=Execall(-414)
  47. End Proc