/*============================================================*/
/*============================================================*/
/*==														==*/
/*==					RenderAsm4 Header					==*/
/*==														==*/
/*============================================================*/
/*============================================================*/


/*========================================================  Prototypes  */

void DropDoorToWorkMapAsm4 (void);
void MaskBoardCursorAsm4 (long, short);
void MaskBallAsm4 (long, short);
void MaskPlayerAsm4 (long, long, long, short);
void DumpWholePlayerAsm4 (long, long);
void DumpWholeBallAsm4 (long, long);
void DumpCursorAsm4 (long, long);
void DumpDoorToScreenAsm4 (void);
void PatchPlayerAsm4 (long, long);
void PatchBallAsm4 (long, long);
void PatchCursorAsm4 (long, long);
void RenderSceneAsm4 (void);
void ReplayWorkToMainAsm4 (void);


/*========================================================  External Variables */

extern playerType		thePlayer;
extern playerType		theOpponent;
extern ballType			theBall;
extern doorType			theDoor;
extern digiDispType		scoreDisplays[2];
extern cursorType		boardCursor;
extern BitMap			offMaskMap;
extern Rect				screenRect, cameraRect;
extern CGrafPtr			offCPartsPtr, offCWorkPtr;
extern Ptr				offBackPix, offPartsPix, offWorkPix;
extern long				screenBase, replaySrc, replayDest;
extern long				ballSrcAddr, ballMaskAddr;
extern long				screenRowAddrs[480], workRowOffsets[480];
extern long				playerSrcAddrs[9][3], fadeMaskAddrs[9][3], opponentSrcAddrs[9][3];
extern long				maskAddrs[9][3];
extern short			screenRowBytes, workRowBytes, backRowBytes, partsRowBytes;
extern Boolean			playerInBack, showBoardCursor, disableBoardCursor, drawThisFrame;