70 int size = tilemap->mapWidth * tilemap->mapHeight;
73 int deltaFrameRow = tilemap->mapWidth > screenWidthAsTiles ? ( tilemap->mapWidth - screenWidthAsTiles ) : 0;
74 int deltaFrameScreen =
size - ( tilemap->mapWidth * screenHeightAsTiles );
78 if ( tilemap->size > 255 ) {
112 for(
int layerIndex = 0; layerIndex < tilemap->mapLayers; ++layerIndex ) {
132 char labelPadding2[
MAX_TEMPORARY_STORAGE]; sprintf( labelPadding2,
"%spady%4.4x", label, layerIndex );
133 char labelDonePutImage[
MAX_TEMPORARY_STORAGE]; sprintf( labelDonePutImage,
"%sdop%4.4x", label, layerIndex );
134 char labelExitFrame[
MAX_TEMPORARY_STORAGE]; sprintf( labelExitFrame,
"%sfr%4.4x", label, layerIndex );
135 char labelSkipFxCheck[
MAX_TEMPORARY_STORAGE]; sprintf( labelSkipFxCheck,
"%sskipx%4.4x", label, layerIndex );
136 char labelSkipIndexCheck[
MAX_TEMPORARY_STORAGE]; sprintf( labelSkipIndexCheck,
"%sskipy%4.4x", label, layerIndex );
184 if ( tilemap->size > 255 ) {
189 cpu_inc( _environment, index->realName );
200 cpu_jump( _environment, labelDonePutImage );
211 cpu_label( _environment, labelDonePutImage );
cpu_label( _environment, labelExitFrame );
236 cpu_label( _environment, labelSkipFxCheck );
239 cpu_jump( _environment, labelExitX2 );
244 cpu_jump( _environment, labelSkipFxCheck );
259 if ( deltaFrameRow > 0 ) {
275 cpu_label( _environment, labelSkipIndexCheck );
278 cpu_jump( _environment, labelExit );
281 cpu_label( _environment, labelPadding2 );
283 cpu_jump( _environment, labelSkipIndexCheck );
294 if ( deltaFrameScreen ) {
void put_image(Environment *_environment, char *_image, char *_x1, char *_y1, char *_x2, char *_y2, char *_frame, char *_sequence, int _flags)
Emit ASM code for PUT IMAGE [image] AT [int],[int].