2022-06-29 19:27:18 +00:00
---
layout: page
title: Toolbox Reference
style: toolref
---
< link rel = "stylesheet" href = "{{ 'assets/css/toolref.css' | relative_url }}" >
< div id = "content" >
< ul >
< li > < a href = "#Init" > Intialization Functions< / a > < / li >
< li > < a href = "#Sprite" > Sprite Functions< / a > < / li >
< li > < a href = "#Tile" > Tile Functions< / a > < / li >
< li > < a href = "#Buffer" > Buffer Functions< / a > < / li >
< li > < a href = "#IO" > I/O Functions< / a > < / li >
< / ul >
< div class = "api_intro" >
< h1 > GTE Tool Set< / h1 >
< p >
The < em > Generic Tile Engine (GTE)< / em > Tool Set enables tile-based games to be implemented in an efficient manner.
The tool set provides support for sprites, animations, large scrolling backgrounds and special effects.
< / p >
< p >
To effectively use this tool set, a user should be familiar with the following
< / p >
< ul >
< li > The IIgs Hardware Reference< / li >
< li > The QuickDraw II tool set< / li >
< li > IIgs Technical Note #70< / li >
< / ul >
< p > < / p >
< h2 > A preview of the GTE Tool Set routines< / h2 >
< p >
To introduce you to the capabilities of the GTE Tool Set the routines are grouped by function and briefly
described in Table 1. These routines are descibed in detail later where they are separated into housekeeping
routines (discussed in routine number order) and the rest of the GTE Tool Set routines (discussed in alphabetical
order).
< / p >
< table class = "intro" >
< tbody >
< tr >
< th colspan = "2" > Table 1< / th >
< / tr >
< tr >
< th colspan = "2" style = "font-weight: normal;" > GTE Tool Set routines and their functions< / th >
< / tr >
< tr class = "intro_header" >
< th > Routine< / th >
< th > Description< / th >
< / tr >
< tr >
< th colspan = "2" > Housekeeping Routines< / th >
< / tr >
< tr >
< td > GTEBootInit< / td >
< td > Initializes the GTE Tool Set; called only by the Tool Locator — must not be called by an application< / td >
< / tr >
< tr >
< td > GTEStartUp< / td >
< td > Starts up the GTE Tool Set for use by an application< / td >
< / tr >
< tr >
< td > GTEShutDown< / td >
< td > Shuts down the GTE Tool Set when an application quits< / td >
< / tr >
< tr >
< td > GTEVersion< / td >
< td > Returns the version number of the GTE Tool Set< / td >
< / tr >
< tr >
< td > GTEReset< / td >
< td > Resets the GTE Tool Set; called only when the system is reset — must not be called by an application< / td >
< / tr >
< tr >
< td > GTEStatus< / td >
< td > Indicates whether the GTE Tool Set is active< / td >
< / tr >
< tr >
< th colspan = "2" > Sprite Routines< / th >
< th > < / th >
< / tr >
< tr >
< td > GTECreateSpriteStamp< / td >
< td > Creates a sprite stamp from the tile set< / td >
< / tr >
< tr >
< td > GTEAddSprite< / td >
< td > Add a active sprite to the scene< / td >
< / tr >
< tr >
< td > GTEMoveSprite< / td >
< td > Changes a sprite's location< / td >
< / tr >
< tr >
< td > GTEUpdateSprite< / td >
< td > Changes a sprite's tile set reference and display flags< / td >
< / tr >
< tr >
< td > GTERemoveSprite< / td >
< td > Removes a sprite from the scene< / td >
< / tr >
< tr >
< th colspan = "2" > Tile Routines< / th >
< / tr >
< tr >
< td > GTELoadTileSet< / td >
< td > Copies a tileset into the GTE tileset memory< / td >
< / tr >
< tr >
< td > GTESetTile< / td >
< td > Assigns a tile to a tile store< / td >
< / tr >
< tr >
< td > GTEGetTileAt< / td >
< td > Retrieves the tile ID stored in the tile store< / td >
< / tr >
< tr >
< td > GTECopyTileToDynamic< / td >
< td > Copies a tile from the tileset memory into the managed dynamic tile memory. Changing the dynamic tile data
will result in all of the tiles updating
on the next call the < tt > GTERender()< / tt > < / td >
< / tr >
< tr >
< td > GTEGetTileDataAddr< / td >
< td > Returns the base address of the tiledata memory< / td >
< / tr >
< tr >
< td > GTEFillTileStore< / td >
< td > Fills the entire tile store with a tile ID.< / td >
< / tr >
< tr >
< th colspan = "2" > Primary Background Routines< / th >
< / tr >
< tr >
< td > GTESetBG0Origin< / td >
< td > Sets the upper-left origin point in the primary background< / td >
< / tr >
< tr >
< td > GTERender< / td >
< td > Draws the current scene to the graphics screen< / td >
< / tr >
< tr >
< td > GTEGetBG0TileMapInfo< / td >
< td > Returns a record describing the number of tiles in the primary tilemap and a pointer to the tilemap data.
< / td >
< / tr >
< tr >
< td > GTESetBG0TileMapInfo< / td >
< td > Defines a tile map for the primary background< / td >
< / tr >
< tr >
< td > GTERefresh< / td >
< td > Forces all of the tiles in the tile store to be refreshed on the next render.< / td >
< / tr >
< tr >
< th colspan = "2" > Secondary Background Routines< / th >
< / tr >
< tr >
< td > GTESetBG1Origin< / td >
< td > Sets the upper-left origin point in the secondary background< / td >
< / tr >
< tr >
< td > GTECopyPicToBG1< / td >
< td > Copies an uncompressed pixel image into the secondard background buffer< / td >
< / tr >
< tr >
< td > GTESetBG1TileMapInfo< / td >
< td > Defines a tile map for the secondary background< / td >
< / tr >
< tr >
< th colspan = "2" > Timer Routines< / th >
< / tr >
< tr >
< td > GTEAddTimer< / td >
< td > Add a timer callback that is fired after a designated number of VBL ticks< / td >
< / tr >
< tr >
< td > GTERemoveTimer< / td >
< td > Removes an active timer< / td >
< / tr >
< tr >
< td > GTEStartScript< / td >
< td > Registers a GTE script to be handled in the background< / td >
< / tr >
< tr >
< th colspan = "2" > Overlay Routines< / th >
< / tr >
< tr >
< td > GTESetOverlay< / td >
< td > Registers an overlay routine to be integrated into the renderer. Typically used for status bars or
messages.< / td >
< / tr >
< tr >
< td > GTEClearOverlay< / td >
< td > Removes the current overlay from the renderer< / td >
< / tr >
< tr >
< th colspan = "2" > Functions affecting the global state< / th >
< / tr >
< tr >
< td > GTESetScreenMode< / td >
< td > Sets the playing field's port rectangle to a pre-defined size, or a specified width and height< / td >
< / tr >
< tr >
< td > GTESetPalette< / td >
< td > Copies a palette to the Super HiRes palette memory< / td >
< / tr >
< tr >
< td > GTEBindSCBArray< / td >
< td > Takes an array of SCB bytes and binds them to either the Primary or Secondary background's vertical
position< / td >
< / tr >
< tr >
< td > GTEGetScreenInfo< / td >
< td > Returns a records describing the origin, width and height of the playfield on the physical graphics
screen.< / td >
< / tr >
< tr >
< th colspan = "2" > Misc. Functions< / th >
< / tr >
< tr >
< td > GTEReadControl< / td >
< td > Reads the keyboard and returns key events in a gamepad structure< / td >
< / tr >
< tr >
< td > GTEGetSeconds< / td >
< td > Returns the number of seconds elapsed since the toolset was started< / td >
< / tr >
< / tbody >
< / table >
< h2 > Using the GTE Tool Set< / h2 >
< p >
This section discusses how the GTE Tool Set routines fit into the general flow of an application and gives you an
idea of which routines you'll need to use under normal circumstances. Each routine is described in detail later in
this chapter.
The GTE Tool Set depends on the presence of the tool sets shown in Table 2 and requires at least the indicated
version of each tool set be present.
< / p >
< table class = "intro" >
< tbody >
< tr >
< th colspan = "4" > Table 2< / th >
< / tr >
< tr >
< th colspan = "4" style = "font-weight: normal;" > GTE Tool Set — other tool sets required< / th >
< / tr >
< tr class = "intro_header" >
< th colspan = "2" > Tool set number< / th >
< th > Tool set name< / th >
< th > Minimal version needed< / th >
< / tr >
< tr >
< td > $01< / td >
< td > #01< / td >
< td > Tool Locator< / td >
< td > 3.x< / td >
< / tr >
< tr >
< td > $02< / td >
< td > #02< / td >
< td > Memory Manager< / td >
< td > 3.x< / td >
< / tr >
< tr >
< td > $03< / td >
< td > #03< / td >
< td > Miscellaneous Tool Set< / td >
< td > 3.2< / td >
< / tr >
< / tbody >
< / table >
< p >
To use the GTE Tool Set routines, your application must call the GTEStartUp routine before making any other GTE
calls. To save memory, the GTE Tool Set may be started up with some features disabled. See the section < a
href="#GTEStartUp">GTEStartUp< / a > in this chapter for further details.
< / p >
< p >
Your application should also make the GTEShutDown call when the application quits.
< / p >
< / div >
< div class = "api" >
< h4 class = "tn" > $01XX< / h4 >
< h4 > GTEBootInit< / h4 >
< p >
Initializes the GTE Tool Set; called only by the Tool Locator.
< / p >
< div class = "warning" >
< p >
An application must never make this call
< / p >
< / div >
< div class = "section" >
< h5 > Parameters< / h5 >
< p >
The stack is not affected by this call. There are no input or output parameters.
< / p >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< p > None< / p >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< p > Call must not be made by an application.< / p >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $02XX< / h4 >
2022-06-30 12:58:42 +00:00
< h4 id = "GTEStartUp" > GTEStartUp< / h4 >
2022-06-29 19:27:18 +00:00
< p >
Starts up the GTE Tool Set for use by an application.
< / p >
< div class = "important" >
< p >
Your application must make this call before it makes any other GTE Tool Set calls.
< / p >
< / div >
< p >
The GTE Tool Set uses two consecutive pages of bank zero for its direct page space starting at < it > dPageAddr< / it > .
If the < tt > ENGINE_MODE_DYN_TILES< / tt > flag is set in the < it > capFlags< / it > , the GTE will attempt to allocate an
< em > additional< / em > eight pages of bank zero space. If the < tt > ENGINE_MODE_BNK0_BUFF< / tt > flag is set, then GTE
will attempt to allocate an ~32KB buffer from $2000 to $9CFF in Bank 0.
< / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > dPageAddr< / td >
< td > < / td >
< td > < em > Word< / em > — 16-bit address of two pages of page-aligned Bank 0 memory< / td >
< / tr >
< tr >
< td class = "bot" > capFlags< / td >
< td > < / td >
< td > < em > Word< / em > — Capability flags to set the engine mode< / td >
< / tr >
< tr >
< td class = "bot" > userID< / td >
< td > < / td >
< td > < em > Word< / em > — User ID to be associated with the block. All memory allocated by GTE will use this
ID< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table role = "table" >
< thead >
< tr >
< th > capFlags< / th >
< th > < / th >
< th > < / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > ENGINE_MODE_TWO_LAYER< / td >
< td > $0001< / td >
< td > Enables the second background layer. This will have a moderate impact on rendering performance.< / td >
< / tr >
< tr >
< td > ENGINE_MODE_DYN_TILES< / td >
< td > $0002< / td >
< td > Enables the use of dynamic (animated) tiles. This will have a small impact on performance and requires
allocating 8 pages of Bank 0 memory< / td >
< / tr >
< tr >
< td > ENGINE_MODE_BNK0_BUFF< / td >
< td > $0004< / td >
< td > Allocates a 32KB buffer in Bank 0 for advanced graphical effects and customizations.< / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< table >
< tbody >
< tr >
< td colspan = "2" > Memory Manager Errors< / td >
< td > Returned unchanged< / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< table style = "font-family: courier, monospace; font-size: smaller;" >
< tbody >
< tr >
< td > extern pascal GTEStartUp(dPageAddr, capFlags, userID)< / td >
< / tr >
< tr >
< td > Word dPageAddr< / td >
< / tr >
< tr >
< td > Word capFlags< / td >
< / tr >
< tr >
< td > Word userID< / td >
< / tr >
< / tbody >
< / table >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $03XX< / h4 >
< h4 > GTEShutDown< / h4 >
< p >
Shuts down the GTE Toolset when an application quits.
< / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< p >
The stack is not affected by this call. There are no input or output parameters.
< / p >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< p > None< / p >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< p > < tt > extern pascal void GTEShutDown()< / tt > < / p >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $04XX< / h4 >
< h4 > GTEVersion< / h4 >
< p >
Returns the version number of the GTE Tool Set.
< / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > wordspace< / td >
< td > < / td >
< td > < em > Word< / em > — Space for result< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > versionInfo< / td >
< td > < / td >
< td > < em > Word< / em > — Version number of the GTE Tool Set.< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< p > None< / p >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< p > < tt > extern pascal Word GTEVersion()< / tt > < / p >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $05XX< / h4 >
< h4 > GTEReset< / h4 >
< p >
Resets the GTE Tool Set; called only when the system is reset.
< / p >
< div class = "warning" >
< p >
An application must never make this call
< / p >
< / div >
< div class = "section" >
< h5 > Parameters< / h5 >
< p > The stack is not affected by this call. There are no input or output parameters< / p >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< p > None< / p >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< p > Call must not be made by an application.< / p >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $06XX< / h4 >
< h4 > GTEStatus< / h4 >
< p >
Indicates whether the GTE Tool Set is active.
< / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > wordspace< / td >
< td > < / td >
< td > < em > Word< / em > — Space for result< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > activeFlag< / td >
< td > < / td >
< td > < em > Word< / em > — < span class = "sc" > boolean< / span > ; TRUE if GTE Tool Set active, FALSE if inactive
< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< p > None< / p >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< p > < tt > extern pascal Boolean GTEStatus()< / tt > < / p >
< / div >
< / div >
< div class = "transition" >
GTE Tool Set routines
< / div >
< div class = "api" >
< h4 class = "tn" > $09XX< / h4 >
< h4 > GTEReadControl< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > wordspace< / td >
< td > < / td >
< td > < em > Word< / em > — Space for result< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > userInput< / td >
< td > < / td >
< td > < em > Word< / em > — packed representation of user input
< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
2022-06-30 12:58:42 +00:00
< p > None< / p >
2022-06-29 19:27:18 +00:00
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-06-30 12:58:42 +00:00
< p > < tt > extern pascal Word GTEReadControl()< / tt > < / p >
< / div >
< div class = "example" >
< h5 > Returned value< / h5 >
< p >
The value returned in < em > userInput< / em > bitfield are show below.
< / p >
< table class = "bits bitfield" >
< colgroup span = "6" style = "background-color: #999;" > < / colgroup >
< colgroup span = "10" style = "background-color: #fff;" > < / colgroup >
< tbody >
< tr >
< td > 15< / td > < td > 14< / td > < td > 13< / td > < td > 12< / td > < td > 11< / td > < td > 10< / td > < td > 9< / td > < td > 8< / td > < td > 7< / td > < td > 6< / td > < td > 5< / td > < td > 4< / td > < td > 3< / td > < td > 2< / td > < td > 1< / td > < td > 0< / td >
< / tr >
< / tbody >
< / table >
< table class = "bitfield-definitions" >
< tbody >
< tr > < td > Bits 0-7< / td > < td > < em > keyCode< / em > < / td > < td > Keyboard code read from the Keyboard register. If no key is currently pressed, this value is zero.< / td > < / tr >
< tr > < td > Bit 8< / td > < td > Reserved< / td > < td > Must be zero.< / td > < / tr >
< tr > < td > Bit 9< / td > < td > fPadButtonB< / td > < td > Set to 1 if the < tt > B< / tt > button of the gamepad is pressed. Mapped to the option key by default.< / td > < / tr >
< tr > < td > Bit 10< / td > < td > fPadButtonA< / td > < td > Set to 1 if the < tt > A< / tt > button of the gamepad is pressed. Mapped to the command key by default.< / td > < / tr >
< tr > < td > Bit 11< / td > < td > fKeyDown< / td > < td > Set to 1 on the initial press of a key. If a key is held down, the < tt > keyCode< / tt > will be set and this bit will be zero.< / tt > < / td > < / tr >
< tr > < td > Bits 12-15< / td > < td > Reserved< / td > < td > Must be zero.< / td > < / tr >
< / tbody >
< / table >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0AXX< / h4 >
< h4 > GTESetScreenMode< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-06-30 12:58:42 +00:00
< tr >
< td class = "bot" > width< / td >
< td > < em > < / em > < / td >
< td > < em > Word< / em > — Width of the playfield in pixels. Must be even.< / td >
< / tr >
< tr >
< td class = "bot" > height< / td >
< td > < em > < / em > < / td >
< td > < em > Word< / em > — Height of the playfield in pixels.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-06-30 12:58:42 +00:00
< p > < tt > extern pascal void GTESetScreenMode(width, height)< / tt > < / p >
< p > < tt > Word width;< / tt > < / p >
< p > < tt > Word height;< / tt > < / p >
< / div >
< div class = "example" >
< h5 > Predefined Screen Sizes< / h5 >
< p >
If the < em > width< / em > value is set to a small number, then one of the pre-defined screen sizes will be selected. Set
the < em > width< / em > to the index number of the screen sizes in the table below to set the screen size to
those dimension. The < em > height< / em > value must still be passed, but is ignored.
< / p >
< table >
< thead >
< tr style = "white-space: nowrap;" >
< th > Play Field Id< / th >
< th > Width< / th >
< th > Height< / th >
< th > < / th >
< th > Size (bytes)< / th >
< th > Percent of Full Screen< / th >
< / tr >
< / thead >
< tbody >
< tr >
< td > 0< / td >
< td > 320< / td >
< td > 200< / td >
< td > Full Screen< / td >
< td > 32,000< / td >
< td > 100%< / td >
< / tr >
< tr >
< td > 1< / td >
< td > 272< / td >
< td > 192< / td >
< td > Sword of Sodan< / td >
< td > 26,112< / td >
< td > 81.6%< / td >
< / tr >
< tr >
< td > 2< / td >
< td > 256< / td >
< td > 200< / td >
< td > NES (approx.)< / td >
< td > 25,600< / td >
< td > 80.0%< / td >
< / tr >
< tr >
< td > 3< / td >
< td > 256< / td >
< td > 176< / td >
< td > Task Force< / td >
< td > 22,528< / td >
< td > 70.4%< / td >
< / tr >
< tr >
< td > 4< / td >
< td > 280< / td >
< td > 160< / td >
< td > Defender of the World< / td >
< td > 22,400< / td >
< td > 70.0%< / td >
< / tr >
< tr >
< td > 5< / td >
< td > 256< / td >
< td > 160< / td >
< td > Rastan< / td >
< td > 20,480< / td >
< td > 64.0%< / td >
< / tr >
< tr >
< td > 6< / td >
< td > 240< / td >
< td > 160< / td >
< td > Game Boy Advanced< / td >
< td > 19,200< / td >
< td > 60.0%< / td >
< / tr >
< tr >
< td > 7< / td >
< td > 288< / td >
< td > 128< / td >
< td > Ancient Land of Y's< / td >
< td > 18,432< / td >
< td > 57.6%< / td >
< / tr >
< tr >
< td > 8< / td >
< td > 160< / td >
< td > 144< / td >
< td > Game Boy Color< / td >
< td > 11,520< / td >
< td > 36.0%< / td >
< / tr >
2022-06-30 13:31:05 +00:00
< tr >
< td > 9< / td >
< td > 288< / td >
< td > 192< / td >
< td > Agony (Amiga)< / td >
< td > 27,648< / td >
< td > 86.4%< / td >
< / tr >
< tr >
< td > 10< / td >
< td > 160< / td >
< td > 102< / td >
< td > Atari Lynx< / td >
< td > 8,160< / td >
< td > 25.5%< / td >
< / tr >
< / tbody >
< / table >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0BXX< / h4 >
< h4 > GTESetTile< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-06-30 12:58:42 +00:00
< tr >
< td class = "bot" > x< / td >
< td > < em > < / em > < / td >
< td > < em > Word< / em > — Horizontal index of the TileStore tile to set. Must be in the range of 0 to 40.< / td >
< / tr >
< tr >
< td class = "bot" > y< / td >
< td > < em > < / em > < / td >
< td > < em > Word< / em > — Vertical index of the TileStore tile to set. Must be in the range of 0 to 25.< / td >
< / tr >
< tr >
< td class = "bot" > tileID< / td >
< td > < em > < / em > < / td >
< td > < em > Word< / em > — Tile ID to place in the TileStore.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-06-30 12:58:42 +00:00
< p > < tt > extern pascal void GTESetTile(x, y, tileID)< / tt > < / p >
2022-07-01 16:01:45 +00:00
< p > < tt > Word x;< / tt > < / p >
< p > < tt > Word y;< / tt > < / p >
2022-06-30 12:58:42 +00:00
< p > < tt > Word tileID;< / tt > < / p >
< / div >
< div class = "example" >
< h5 > Tile Identifiers< / h5 >
< p >
The tile ID word is defined as follows
< / p >
< table class = "bits bitfield" >
< colgroup span = "1" style = "background-color: #999;" > < / colgroup >
< colgroup span = "6" style = "background-color: lightblue;" > < / colgroup >
< colgroup span = "9" style = "background-color: white;" > < / colgroup >
< tbody >
< tr >
< td > 15< / td > < td > 14< / td > < td > 13< / td > < td > 12< / td > < td > 11< / td > < td > 10< / td > < td > 9< / td > < td > 8< / td > < td > 7< / td > < td > 6< / td > < td > 5< / td > < td > 4< / td > < td > 3< / td > < td > 2< / td > < td > 1< / td > < td > 0< / td >
< / tr >
< / tbody >
< / table >
< table class = "bitfield-definitions" >
< tbody >
< tr > < td > Bits 0-8< / td > < td > tileIndex< / td > < td > The index of the tile in the current Tile Set. A Tile Set can be defined by calling the < tt > GTELoadTileSet< / tt > function< / td > < / tr >
< tr > < td > Bit 9< / td > < td > fTileHFlip< / td > < td > Flips the tile horizontally when set.< / td > < / tr >
< tr > < td > Bit 10< / td > < td > fTileVFlip< / td > < td > Flips the tile vertically when set.< / td > < / tr >
< tr > < td > Bit 11< / td > < td > fTileDynamic< / td > < td > Identifies this tile as a dynamic tile. The < tt > tileIndex< / tt > is used to identify the dynamic tile data slow and must be in the range 0 to 31.< / td > < / tr >
< tr > < td > Bit 12< / td > < td > fTileSolid< / td > < td > Hint bit that marks a tile as having no mask. Can improve performance when ENGINE_MODE_TWO_LAYER is set.< / td > < / tr >
< tr > < td > Bit 13< / td > < td > fTileFringe< / td > < td > Unused. Must be zero.< / td > < / tr >
< tr > < td > Bit 14< / td > < td > fTilePriority< / td > < td > Sets the tile to high priority. Sprites will render under this tile, if supported.< / td > < / tr >
< tr > < td > Bit 15< / td > < td > Reserved< / td > < td > Must be zero.< / td > < / tr >
< / tbody >
< / table >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0CXX< / h4 >
< h4 > GTESetBG0Origin< / h4 >
2022-07-01 16:01:45 +00:00
< p >
Sets the coordinate of the upper-left corner of the playfield within the primary background buffer. The coordiate values
are < em > unsigned< / em > , so transitioning from 0 to -1 will result in a discontinuous jump in the background position.
< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > < / td >
xpos
< td > < / td >
< td > < em > Word< / em > — Unsigned horizontal position< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
ypos
< td > < / td >
< td > < em > Word< / em > — Unsigned vertical position< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTESetBG0Origin(x, y)< / tt > < / p >
< p > < tt > Word x;< / tt > < / p >
< p > < tt > Word y;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0DXX< / h4 >
< h4 > GTERender< / h4 >
2022-07-01 16:01:45 +00:00
< p > Renders the current playfield to the graphics screen.< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
2022-07-01 16:01:45 +00:00
< p >
The stack is not affected by this call. There are no input or output parameters.
< / p >
2022-06-29 19:27:18 +00:00
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTERender()< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0EXX< / h4 >
< h4 > GTELoadTileSet< / h4 >
2022-07-01 16:01:45 +00:00
< p >
Loads a tileset into the internal GTE memory buffer. The < span class = "sc" > pointer< / span > must point to
tiles that are already in GTE tile format.
< / p >
< p >
A tile set is an array of (up to) 512 tile definitions and each tile definition is 128 bytes. The tile definition
is comprised of four, 32-byte tiles; a normal tile, its mask, a horizontally flipped versio of the tile and its mask.
The first 128 bytes of a tileset must be set to zero.
< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > tileSetPtr< / td >
< td > < / td >
< td > < em > Long< / em > — < span class = "sc" > pointer< / span > to the tile set data.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTELoadTileSet(tileSetPtr)< / tt > < / p >
< p > < tt > Pointer tileSetPtr;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $0FXX< / h4 >
< h4 > GTECreateSpriteStamp< / h4 >
2022-07-01 16:01:45 +00:00
< p >
Creates a sprite stamp (cache sprite pixel data copy) from a sprite identifier and the current
tile set. The < em > vBuffAddr< / em > points to a location in the internal virtual buffer area. In
most cases, an address for a sprite can be calculated from the < tt > VBUFF_SPRITE_START< / tt > and
< tt > VBUFF_SPRITE_STEP< / tt > constants as < tt > ADDR(n) = VBUFF_SPRITE_START + n*VBUFF_SPRITE_STEP< / tt > .
< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > spriteID< / td >
< td > < / td >
< td > < em > Word< / em > — sprite descriptor word< / td >
< / tr >
< tr >
< td class = "bot" > vBuffAddr< / td >
< td > < / td >
< td > < em > Word< / em > — Location in the sprite vitual buffer to allocate the stamp.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTECreateSpriteStamp(spriteID, vBuffAddr)< / tt > < / p >
< p > < tt > Word spriteID;< / tt > < / p >
< p > < tt > Word vBuffAddr;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $10XX< / h4 >
< h4 > GTEAddSprite< / h4 >
2022-07-01 16:01:45 +00:00
< p >
Adds a new sprite to the current scene. If a sprite is already assigned to the sprite slot, then
that sprite is removed and replaced with the new sprite.
< / p >
< p >
A sprite can have negative coordinates and be placed off-screen. A sprite's coordinates are local
coordinates on the playfield; a sprite will not move automatically when < tt > GTESetBG0Origin< / tt > is changed.
< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > spriteSlot< / td >
< td > < / td >
< td > < em > Word< / em > — Sprite slot assigned to this new sprite.< / td >
< / tr >
< tr >
< td class = "bot" > x< / td >
< td > < / td >
< td > < em > Word< / em > — Signed horizontal sprite position on the playfield.< / td >
< / tr >
< tr >
< td class = "bot" > y< / td >
< td > < / td >
< td > < em > Word< / em > — Signed vertical sprite position on the playfield.< / td >
< / tr >
< tr >
< td class = "bot" > vBuffAddr< / td >
< td > < / td >
< td > < em > Word< / em > — Address of the stamp to use for this sprite. A stamp can be shared by multiple sprites.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTEAddSprite(spriteSlot, x, y, vBuffAddr)< / tt > < / p >
< p > < tt > Word spriteSlot;< / tt > < / p >
< p > < tt > Word x;< / tt > < / p >
< p > < tt > Word y;< / tt > < / p >
< p > < tt > Word vBuffAddr;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $11XX< / h4 >
< h4 > GTEMoveSprite< / h4 >
2022-07-01 16:01:45 +00:00
< p > Repositions a sprite on the play field.< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > spriteSlot< / td >
< td > < / td >
< td > < em > Word< / em > — Slot where the target sprite is located.< / td >
< / tr >
< tr >
< td class = "bot" > x< / td >
< td > < / td >
< td > < em > Word< / em > — New horizontal position.< / td >
< / tr >
< tr >
< td class = "bot" > y< / td >
< td > < / td >
< td > < em > Word< / em > — New vertical position< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTEMoveSprite(spriteSlot, x, y)< / tt > < / p >
< p > < tt > Word spriteSlot;< / tt > < / p >
< p > < tt > Word x;< / tt > < / p >
< p > < tt > Word y;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $12XX< / h4 >
< h4 > GTEUpdateSprite< / h4 >
2022-07-01 16:01:45 +00:00
< p >
Changes the stamp or the status flags of a sprite. The size of the sprite cannot be changed.
Typically, an application will call < tt > GTEUpdateSprite< / tt > immediately after < tt > GTEAddSprite< / tt > to
set all of th desired sprite properties.
< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > spriteSlot< / td >
< td > < / td >
< td > < em > Word< / em > — Sprite slot of the target sprite to update.< / td >
< / tr >
< tr >
< td class = "bot" > spriteFlags< / td >
< td > < / td >
< td > < em > Word< / em > — A new set of sprite flags.< / td >
< / tr >
< tr >
< td class = "bot" > vBuffAddr< / td >
< td > < / td >
< td > < em > Word< / em > — Sprite stamp virtual buffer address.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTEUpdateSprite(spriteSlot, spriteFlags, vBuffAddr)< / tt > < / p >
< p > < tt > Word spriteSlot;< / tt > < / p >
< p > < tt > Word spriteFlags;< / tt > < / p >
< p > < tt > Word vBuffAddr;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $13XX< / h4 >
< h4 > GTERemoveSprite< / h4 >
2022-07-01 16:01:45 +00:00
< p > Removes a sprite from the play field.< / p >
2022-06-29 19:27:18 +00:00
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
2022-07-01 16:01:45 +00:00
< tr >
< td class = "bot" > spriteSlot< / td >
< td > < / td >
< td > < em > Word< / em > — Sprite slot of the target sprite to update.< / td >
< / tr >
2022-06-29 19:27:18 +00:00
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
2022-07-01 16:01:45 +00:00
< p > < tt > extern pascal void GTERemoveSprite(spriteSlot)< / tt > < / p >
< p > < tt > Word spriteSlot;< / tt > < / p >
2022-06-29 19:27:18 +00:00
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $14XX< / h4 >
< h4 > GTEGetSeconds< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $15XX< / h4 >
< h4 > GTECopyTileToDynamic< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $16XX< / h4 >
< h4 > GTESetPalette< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $17XX< / h4 >
< h4 > GTECopyPicToBG1< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $18XX< / h4 >
< h4 > GTEBindSCBArray< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $19XX< / h4 >
< h4 > GTEGetBG0TileMapInfo< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1AXX< / h4 >
< h4 > GTEGetScreenInfo< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1BXX< / h4 >
< h4 > GTESetBG1Origin< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1CXX< / h4 >
< h4 > GTEGetTileAt< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1DXX< / h4 >
< h4 > GTESetBG0TileMapInfo< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1EXX< / h4 >
< h4 > GTESetBG1TileMapInfo< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $1FXX< / h4 >
< h4 > GTEAddTimer< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $20XX< / h4 >
< h4 > GTERemoveTimer< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $21XX< / h4 >
< h4 > GTEStartScript< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $22XX< / h4 >
< h4 > GTESetOverlay< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $23XX< / h4 >
< h4 > GTEClearOverlay< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $24XX< / h4 >
< h4 > GTEGetTileDataAddr< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $25XX< / h4 >
< h4 > GTEFillTileStore< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< div class = "api" >
< h4 class = "tn" > $26XX< / h4 >
< h4 > GTERefresh< / h4 >
< p > < / p >
< div class = "section" >
< h5 > Parameters< / h5 >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack before call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< table class = "stack" >
< colgroup >
< col class = "col-1" >
< col class = "col-2" >
< col class = "col-3" >
< / colgroup >
< tbody >
< tr >
< th > Stack after call< / th >
< / tr >
< tr >
< td class = "top" > previous contents< / td >
< / tr >
< tr >
< td class = "bot" > < / td >
< td > < em > ←< / em > < / td >
< td > < em > SP< / em > < / td >
< / tr >
< / tbody >
< / table >
< / div >
< div class = "section" >
< h5 > Errors< / h5 >
< / div >
< div class = "section" >
< h5 > C< / h5 >
< / div >
< / div >
< / div >