home *** CD-ROM | disk | FTP | other *** search
- /*
- * QuickGMS screen methods, these are jsut to make screens simpler to
- * initialise, no big deal.
- */
-
- OPT MODULE
- OPT EXPORT
-
- MODULE 'games','games/games'
-
- EXPORT OBJECT newgmsscn
- width:LONG
- height:LONG
- depth:LONG
- attribs:LONG
- mode:LONG
- type:LONG
- ENDOBJECT
-
- OBJECT qgscn PUBLIC
- scn:PTR TO gamescreen
- ENDOBJECT
-
- PROC init(gs:PTR TO newgmsscn) OF qgscn
- /*
- * Open screen
- */
-
- DEF s:PTR TO gamescreen
-
- s:=NEW [GSV1,
- 0, -> Stats
- 0,0,0, -> Buffers
- 0, -> Linked screen
- 0, -> Palette
- 0, -> Rasterlist
- 0, -> Colours
- gs.width,gs.height, -> Width and height
- gs.width,gs.width/8,gs.height, -> Picture width and height
- gs.depth, -> Depth
- 0,0, -> x,y screen offset
- 0,0, -> x,y picture offset
- gs.attribs, -> Attributes
- gs.mode,
- gs.type
- ]:gamescreen
-
- self.scn:=s
-
- ENDPROC
-
- PROC open() OF qgscn
- /*
- * Add screen into list
- */
-
- DEF err=NIL
-
- err:=AddScreen(self.scn)
-
- ENDPROC err
-
- PROC getscreen() OF qgscn
- /*
- * Get the real GMS screen pointer
- */
- ENDPROC(self.scn)
-
- PROC end() OF qgscn
- /*
- * Remove screen and dispose of alloc'd ram
- */
-
- IF self.scn
- DeleteScreen(self.scn)
- END self.scn
- ENDIF
-
- ENDPROC
-