1
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2
* Mupen64plus - hardware.h *
3
* Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ *
4
* Copyright (C) 2008 Marshallh *
6
* This program is free software; you can redistribute it and/or modify *
7
* it under the terms of the GNU General Public License as published by *
8
* the Free Software Foundation; either version 2 of the License, or *
9
* (at your option) any later version. *
11
* This program is distributed in the hope that it will be useful, *
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
14
* GNU General Public License for more details. *
16
* You should have received a copy of the GNU General Public License *
17
* along with this program; if not, write to the *
18
* Free Software Foundation, Inc., *
19
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
20
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
22
/* Frame buffer variables. */
25
/* 8-bit CFB defines. */
26
u8* Logical_CFB = _cfb[0];
27
u8* Next_CFB = _cfb[1];
28
u8* Next2_CFB = _cfb[2];
29
u16 CFB_Count = 0; /* Current logical CFB. */
30
u16 CFB_NextCount = 1; /* Next logical CFB. */
31
u16 CFB_NextCount2 = 2; /* Second next logical CFB. */
34
/* 16-bit CFB defines. */
35
u16* Logical_CFB = _cfb[0];
36
u16* Next_CFB = _cfb[1];
37
u16* Next2_CFB = _cfb[2];
38
u16 CFB_Count = 0; /* Current logical CFB. */
39
u16 CFB_NextCount = 1; /* Next logical CFB. */
40
u16 CFB_NextCount2 = 2; /* Second next logical CFB. */
43
/* 32-bit CFB defines. */
44
u32* Logical_CFB = _cfb[0];
45
u32* Next_CFB = _cfb[1];
46
u32* Next2_CFB = _cfb[2];
47
u16 CFB_Count = 0; /* Current logical CFB. */
48
u16 CFB_NextCount = 1; /* Next logical CFB. */
49
u16 CFB_NextCount2 = 2; /* Second next logical CFB. */
61
Dynamic dynamic[NUM_CFB];
64
static OSThread mainThread;
65
static OSThread gameThread;
68
u64 bootStack[STACKSIZE/8]; /* For boot code. Can reuse on boot code exit. */
69
u64 mainStack[STACKSIZE/8]; /* Stacks for threads... */
70
u64 gameStack[STACKSIZE/8];
74
OSMesg PiMessages[PI_MSGQUEUE_SIZE];
75
OSMesgQueue PiMessageQ;
78
OSMesgQueue SiMessageQ;
80
OSMesg DMAMessages[DMA_MSGQUEUE_SIZE];
81
OSMesgQueue DMAMessageQ;
83
OSMesg RDPDoneMessages[RDPDONE_MSGQUEUE_SIZE];
84
OSMesgQueue RDPDoneMessageQ;
86
OSMesg RSPDoneMessages[RSPDONE_MSGQUEUE_SIZE];
87
OSMesgQueue RSPDoneMessageQ;
89
OSMesg RetraceMessages[RETRACE_MSGQUEUE_SIZE];
90
OSMesgQueue RetraceMessageQ;
95
char *rsp_static_addr; /* R4300 addr where rsp_static segment loaded */
96
char *rsp_static_end; /* R4300 addr+1 for end of the load region */
99
/* Viewport structure */
102
SCREEN_WIDTH*2, SCREEN_HEIGHT*2, G_MAXZ/2, 0, /* scale */
103
SCREEN_WIDTH*2, SCREEN_HEIGHT*2, G_MAXZ/2, 0, /* translate */
106
/* Screen clear color */
107
u32 ScreenClearColor = GPACK_RGBA5551(0, 0, 0, 1);