Prev: 48308 Up: Map Next: 48433
48357: Draw Frame
Used by the routine at RunGame.
Draws the frame around the room into the buffer, from the pieces whose data starts at FramePieces. The frame is made of runs of the same piece, drawn one after another, each a fixed distance from the last. The temporary object at TemporaryObject is used to draw them.
Before After DrawFrame and UpdateScreen
draw-frame-before draw-frame-after
DrawFrame 48357 LD IX,47818 Use the temporary object, TemporaryObject.
48361 LD HL,48433 Take the data of the pieces, FramePieces.
Draw the sloping edge on the left, which runs down to the right.
48364 CALL SetSpriteDetails Call SetSpriteDetails to set up the first piece.
48367 LD DE,63504 Set the distance between pieces, which is 16 to the right and 8 down.
48370 LD B,5 Set a counter in B of five pieces.
48372 CALL PrintSprites Call PrintSprites to draw them.
Draw the sloping edge on the right, which runs down to the left.
48375 CALL SetSpriteDetails Call SetSpriteDetails to set up the next piece.
48378 LD DE,63728 Set the distance between pieces, which is 16 to the left and 8 down.
48381 LD B,5 Set a counter in B of five pieces.
48383 CALL PrintSprites Call PrintSprites to draw them.
Draw the two upright edges at the sides, which are each made of two runs that go up and are drawn one above the other.
48386 CALL SetSpriteDetails Call SetSpriteDetails to set up the next piece.
48389 LD DE,8192 Set the distance between pieces, which is 32 up.
48392 LD B,2 Set a counter in B of two pieces.
48394 CALL PrintSprites Call PrintSprites to draw them.
48397 CALL SetSpriteDetails Call SetSpriteDetails to set up the next piece.
48400 LD B,2 Set a counter in B of two pieces.
48402 CALL PrintSprites Call PrintSprites to draw them.
48405 CALL SetSpriteDetails Call SetSpriteDetails to set up the next piece.
48408 LD B,2 Set a counter in B of two pieces.
48410 CALL PrintSprites Call PrintSprites to draw them.
48413 CALL SetSpriteDetails Call SetSpriteDetails to set up the next piece.
48416 LD B,2 Set a counter in B of two pieces.
48418 CALL PrintSprites Call PrintSprites to draw them.
Draw the two pieces in the middle of the bottom, and the cap at the top of each upright edge.
48421 CALL PrintTableSprite Call PrintTableSprite to draw each of the first three of those pieces.
48424 CALL PrintTableSprite
48427 CALL PrintTableSprite
48430 JP PrintTableSprite Jump to PrintTableSprite.
Prev: 48308 Up: Map Next: 48433