sm64/include/project.h

172 lines
4.8 KiB
C

/********************************************************************************
project.h: Ultra 64 MARIO Brothers include file
Copyright (c) 1996 Nintendo co., ltd. All rights reserved
June 12, 1996
********************************************************************************/
#ifndef PROJECT_H
#define PROJECT_H
/*-------------------------------------------------------------------------------
* Switch.
*/
#define DEBUGSW 0
#define DEVELOP 0
#define VERSION_E3 0
#define LOCALE_US 0
#define LOCALE_ZH 1
#define ENGLISH 0
#define CHINA 1
#define PRESS 0
#define FORCE_MPAL 0
#define mariosound
/********************************************************************************/
/* Segment definition */
/********************************************************************************/
#define SEGMENT_CODE 0x00
#define SEGMENT_DYNAMIC 0x01
#define SEGMENT_BASIC 0x02
#define SEGMENT_KEEP 0x03
#define SEGMENT_PLAYER 0x04
#define SEGMENT_FACE 0x04
#define SEGMENT_ENEMY1 0x05
#define SEGMENT_ENEMY2 0x06
#define SEGMENT_STAGE1 0x07
#define SEGMENT_ENEMY3 0x08
#define SEGMENT_TEXTURE 0x09
#define SEGMENT_BACK 0x0A
#define SEGMENT_WEATHER 0x0B
#define SEGMENT_ENEMYDATA1 0x0C
#define SEGMENT_ENEMYDATA2 0x0D
#define SEGMENT_STAGEDATA1 0x0E
#define SEGMENT_ENEMYDATA3 0x0F
#define SEGMENT_BOOTSEQ 0x10
#define SEGMENT_MARIOANIM 0x11
#define SEGMENT_LUIGIANIM 0x12
#define SEGMENT_PATHDATA 0x13
#define SEGMENT_DEMODATA 0x14
#define SEGMENT_GAMEDATA 0x15
#define SEGMENT_KEEPDATA 0x16
#define SEGMENT_PLAYDATA 0x17
#define SEGMENT_CONTDATA 0x18
#define ADDRESS_CODE 0x00000000
#define ADDRESS_DYNAMIC 0x01000000
#define ADDRESS_BASIC 0x02000000
#define ADDRESS_KEEP 0x03000000
#define ADDRESS_PLAYER 0x04000000
#define ADDRESS_FACE 0x04000000
#define ADDRESS_ENEMY1 0x05000000
#define ADDRESS_ENEMY2 0x06000000
#define ADDRESS_STAGE1 0x07000000
#define ADDRESS_ENEMY3 0x08000000
#define ADDRESS_TEXTURE 0x09000000
#define ADDRESS_BACK 0x0A000000
#define ADDRESS_WEATHER 0x0B000000
#define ADDRESS_ENEMYDATA1 0x0C000000
#define ADDRESS_ENEMYDATA2 0x0D000000
#define ADDRESS_STAGEDATA1 0x0E000000
#define ADDRESS_ENEMYDATA3 0x0F000000
#define ADDRESS_BOOTSEQ 0x10000000
#define ADDRESS_MARIOANIM 0x11000000
#define ADDRESS_LUIGIANIM 0x12000000
#define ADDRESS_PATHDATA 0x13000000
#define ADDRESS_DEMODATA 0x14000000
#define ADDRESS_GAMEDATA 0x15000000
#define ADDRESS_KEEPDATA 0x16000000
#define ADDRESS_PLAYDATA 0x17000000
#define ADDRESS_CONTDATA 0x18000000
/********************************************************************************/
/* memory */
/********************************************************************************/
#define APPL_MEMORY_START 0x80000400
#define APPL_MEMORY_END 0x801C1000
#define DEPTHBUF_START 0x80000400
#define FREEZONE_START 0x8005C000
#define FREEZONE_END 0x801C1000
#define DEMOCODE_START 0x8016F000
#define TEXTBUFF_START 0x801C1000
#define CPROGBUF_START 0x801CE000
#define FIFOBUFF_START 0x8022A000 /* 0x80227000 */
#define CPROGRAM_START 0x80249000 /* 0x80246000 */
#define ULIBCODE_START 0x80378800
#define CPROGRAM_END 0x8038F800
#define FRAMEBUF_START 0x8038F800
/********************************************************************************/
/* buffer size */
/********************************************************************************/
#define BOOT_STACKSIZE 0x0400
#define IDLE_STACKSIZE 0x0800
#define MAIN_STACKSIZE 0x2000
#define BOOT_STACKSIZE64 (BOOT_STACKSIZE >> 3)
#define IDLE_STACKSIZE64 (IDLE_STACKSIZE >> 3)
#define MAIN_STACKSIZE64 (MAIN_STACKSIZE >> 3)
#define RMON_STACKSIZE64 (RMON_STACKSIZE >> 3)
#define DAT_YIELD_SIZE64 (OS_YIELD_DATA_SIZE >> 3)
#define AUD_YIELD_SIZE64 (OS_YIELD_AUDIO_SIZE >> 3)
#define RSP_FIFO_SIZE8 0x1F000
#define RSP_FIFO_SIZE64 (RSP_FIFO_SIZE8 >> 3)
#define BACKUP_EEROM_SIZE8 512
#define BACKUP_EEROM_SIZE64 (BACKUP_EEROM_SIZE8 >> 3)
#define HEAP_SIZE 0x4000
#define DYNAMIC_BLKSIZE 6400
#define MAP_NUMSHAPES 256
#define MAP_NUMSCENES 8
#define MAP_NUMLIGHTS 8
#define MAP_NUMCAMERAS 8
/********************************************************************************/
/* Geometry render mode. */
/********************************************************************************/
#define NUM_RENDERS 8
#define RM_BACK 0
#define RM_SURF 1
#define RM_DECAL 2
#define RM_INTER 3
#define RM_SPRITE 4
#define RM_XSURF 5
#define RM_XDECAL 6
#define RM_XINTER 7
#define RM_SOFT_SPRITE RM_SPRITE
/********************************************************************************/
/* Mario start height. */
/********************************************************************************/
#define START_H 1000
#endif