home *** CD-ROM | disk | FTP | other *** search
/ Aminet 18 / aminetcdnumber181997.iso / Aminet / dev / misc / gms_dev.lha / GMS / Source / E / Screens / OBJScreen.e < prev    next >
Encoding:
Text File  |  1997-02-10  |  1.1 KB  |  43 lines

  1. /*
  2. ** Object Demo
  3. ** -----------
  4. ** Opens a screen according to the settings in an object file.  See
  5. ** asm/UsingObjects/OBJScreen.s for the object definitions.
  6. */
  7.  
  8. MODULE 'games','games/games'
  9.  
  10. PROC main()
  11.   DEF gamescreen:PTR TO gamescreen, picture:PTR TO picture, objbase:LONG
  12.  
  13.   IF gmsbase := OpenLibrary('games.library',0)
  14.    SetUserPrefs(0);
  15.  
  16.    IF (objbase := LoadObjectFile('GAMESLIB:data/OBJ.Screen'))
  17.     IF (gamescreen := GetObject(objbase,'DemoScreen'))
  18.      IF (picture := GetObject(objbase,'DemoPicture'))
  19.       IF (LoadPic(picture) = ERR_OK)
  20.          gamescreen.picwidth := picture.width
  21.          gamescreen.picheight := picture.height
  22.          gamescreen.planes := picture.planes
  23.          gamescreen.scrmode := picture.scrmode
  24.          gamescreen.scrtype := picture.scrtype
  25.          gamescreen.memptr1 := picture.data
  26.          gamescreen.palette := picture.palette
  27.  
  28.          IF (AddScreen(gamescreen) = ERR_OK)
  29.             ShowScreen(gamescreen)
  30.             WaitLMB()
  31.             DeleteScreen(gamescreen)
  32.          ENDIF
  33.        FreePic(picture)
  34.       ENDIF
  35.      ENDIF
  36.     ENDIF
  37.    FreeObjectFile(objbase)
  38.    ENDIF
  39.   CloseLibrary(gmsbase)
  40.   ENDIF
  41. ENDPROC
  42.  
  43.