memmap.h

来自「ESS3890+SL原代码(1*16内存)」· C头文件 代码 · 共 970 行 · 第 1/3 页

H
970
字号
/* Copyright 1998, ESS Technology, Inc.                                 *//* SCCSID @(#)memmap.h	4.29.1.3 02/23/05 *//* * $Log$ *//* adapted from max2,max3 in common.h */#define RNDUP4(x)		((((x) + 3) / 4) * 4)#define bigger(a,b)	        ((a)>(b)?(a):(b))#define biggest(a,b,c,d,e,f)    bigger(bigger(bigger(a,b),bigger(c,d)), \                                       bigger(e,f))/* the start */#define OSD_start		RNDUP4((VCD20STACK / 4))#define NPOSD_DRAM_START	RNDUP4(OSD_start+OSD_AREA1_SIZE)#define INFO_VCD_start		RNDUP4(OSD_end)#define VCD_ABV_start		RNDUP4(INFO_VCD_end)#define VC_VBV_start		RNDUP4(VCD_ABV_end)#define GAMMA_start		RNDUP4(VC_VBV_end)#define KARASC_start		RNDUP4(GAMMA_end)	/* KARASC */#define DIGEST_OSD_start	KARASC_start		/* shared w/KARASC */#define KFREF_start		KARASC_start	#define KTMP_start		RNDUP4(KFREF_end)#define KCOEF_start		RNDUP4(KTMP_end)#define KHIST_start		RNDUP4(KCOEF_end)#define KFCOEF_start		RNDUP4(KHIST_end)#define KFHIST_start		RNDUP4(KFCOEF_end)#define KBUF_start		RNDUP4(KFHIST_end)#define DISP_start		RNDUP4(KARASC_end)#define IS_start		MP3_DRAM_start /* can be variable!! */#define QUA_start		RNDUP4(IS_end)#define TAN1_start		RNDUP4(QUA_end)#define TAN2_start		RNDUP4(TAN1_end)#define CA_start		RNDUP4(TAN2_end)#define CS_start		RNDUP4(CA_end)#define FWIN_start		RNDUP4(CS_end)#define FWIN1_start		RNDUP4(FWIN_end)#define FWIN2_start		RNDUP4(FWIN1_end)#define FWIN3_start		RNDUP4(FWIN2_end)#define COS6_start		RNDUP4(FWIN3_end)#define COS9_start		RNDUP4(COS6_end)#define COS12_start		RNDUP4(COS9_end)#define COS36_start		RNDUP4(COS12_end)#define MAPBUF0_start		RNDUP4(COS36_end)#define MAPBUF1_start		RNDUP4(MAPBUF0_end)#define MAPBUF2_start		RNDUP4(MAPBUF1_end)#define ISLEN_start 		RNDUP4(MAPBUF2_end)#define NSLEN_start 		RNDUP4(ISLEN_end)#define POW1_start 		RNDUP4(NSLEN_end)#define POW2_start 		RNDUP4(POW1_end)#define HUFFTAB_start		RNDUP4(POW2_end)#define HUFFSUBLEN_start	RNDUP4(HUFFTAB_end)#define MULT32_start		RNDUP4(HUFFSUBLEN_end)#define SUBAND_start		RNDUP4(MULT32_end)#define SAMPLE_start		RNDUP4(SUBAND_end)#define SBUF_start		RNDUP4(SAMPLE_end)#define PREVBLCK_start		RNDUP4(SBUF_end)#define IS_POS_start		RNDUP4(PREVBLCK_end)#define SIDE_INFO_start		RNDUP4(IS_POS_end)#define SCALEFACS_start		RNDUP4(SIDE_INFO_end)#define INDEX_start		RNDUP4(SCALEFACS_end)#define SYNC_start		RNDUP4(INDEX_end)#define HUFFCODETAB_start	RNDUP4(SYNC_end)#define MP3_UCODE_start		RNDUP4(HUFFCODETAB_end)#define MP3_globals_start	RNDUP4(MP3_UCODE_end)#define MP3_CODE_start		RNDUP4(MP3_globals_end)#define MP3_ABV_start		RNDUP4(MP3_CODE_end)#define SHARE_start		RNDUP4(DISP_end)       /* SHARE */#ifdef VCDLC#define APP_SHARE_start		RNDUP4(DISP_start + 38016)#else#define APP_SHARE_start		SHARE_start#endif /* VCDLC */#define MIT_start		APP_SHARE_start    /* MIC_RECORD */#define REC_start		MIT_end#define JPEG_code_start		RNDUP4(JPEG_disp_end)  /* JPEG */#define JPEG_data_start		RNDUP4(JPEG_code_end)#define JPEG_globals_start	RNDUP4(JPEG_data_end)#define WAV_start		RNDUP4(JPEG_globals_end)  /* AVI */#define AVI_ABV_start		RNDUP4(WAV_end)#define GMBY_globals_start	APP_SHARE_start /* GAME */#define GMBY_ROM_start		RNDUP4(GMBY_globals_end)#ifdef VCDLC#define GMBY_RAM_start		RNDUP4(GMBY_ROM_start + 32768 + 4)#else#define GMBY_RAM_start		RNDUP4(GMBY_ROM_end)#endif /* VCDLC */#define GMBY_RGB_start		RNDUP4(GMBY_RAM_end)#define GMBY_SGB_start		RNDUP4(GMBY_RGB_end)#define GMBY_STACK_start	RNDUP4(GMBY_SGB_end)#define GMBY_SNDDP_start	RNDUP4(GMBY_STACK_end)#define GMBY_SNDSTK_start	RNDUP4(GMBY_SNDDP_end)#define GMBY_Cycles_start	RNDUP4(GMBY_SNDSTK_end)#define GMBY_CyclesCB_start	RNDUP4(GMBY_Cycles_end)#define GMBY_GBtoZ80_start	RNDUP4(GMBY_CyclesCB_end)#define GMBY_Z80toGB_start	RNDUP4(GMBY_GBtoZ80_end)#define GMBY_HFlip_start	RNDUP4(GMBY_Z80toGB_end)#define GMBY_DAATable_start	RNDUP4(GMBY_HFlip_end)#define GMBY_IO_start		RNDUP4(GMBY_DAATable_end)#define GMBY_RGBPAL_start	RNDUP4(GMBY_IO_end)#define GMBY_YUVPAL_start	RNDUP4(GMBY_RGBPAL_end)#define GMBY_GBL_start		RNDUP4(GMBY_YUVPAL_end)#define GMBY_CODE_start		RNDUP4(GMBY_GBL_end)#define INES_ROM_start		GMBY_ROM_start#define INES_RAM_start		GMBY_RAM_start#define INES_STACK_start	GMBY_STACK_start#define INES_RConv_start	GMBY_Cycles_start#define INES_ZNTable_start	GMBY_CyclesCB_start#define INES_Conv_start		GMBY_GBtoZ80_start#define INES_SRAM_start		GMBY_Z80toGB_start#define INES_Sprites_start	GMBY_HFlip_start#define INES_SNDLength_start	GMBY_IO_start#define INES_Palette_start	GMBY_DAATable_start#if defined(VGB) || defined(VGB_CD)#define VGB_ROM_start		GMBY_ROM_start#define VGB_RAM_start		GMBY_RAM_start#define VGB_RGB_start		GMBY_RGB_start#define VGB_SGB_start		GMBY_SGB_start#define VGB_STACK_start		GMBY_STACK_start#define VGB_Cycles_start	GMBY_Cycles_start#define VGB_CyclesCB_start	GMBY_CyclesCB_start#define VGB_GBtoZ80_start	GMBY_GBtoZ80_start#define VGB_Z80toGB_start	GMBY_Z80toGB_start#define VGB_HFlip_start		GMBY_HFlip_start#define VGB_DAATable_start	GMBY_CODE_end#define VGB_IO_start		GMBY_IO_start#define VGB_SNDSTK_start	GMBY_SNDSTK_start#endif#define CDT_MEM_start		APP_SHARE_start  /* CDTEXT*/#define CDT_STACK_start		RNDUP4(CDT_MEM_start)#define CDT_STRMEM_start	RNDUP4(CDT_STACK_end)#define CDT_DISPMEM_start	RNDUP4(CDT_STRMEM_end)#define CDT_RAWDATA_start	RNDUP4(CDT_MEM_end)#define CDT_IRQBUF_start	RNDUP4(CDT_RAWDATA_end)         #ifdef VCDLC#define DEMUX_ROM_start         RNDUP4(DISP_start)#define CDG_MEM_start           RNDUP4(DEMUX_ROM_end)#else#define CDG_MEM_start		(ISO_end - CDG_share_size)#define MP3CDG_ABV_start        SHARE_start#define MP3CDG_VBV_start        RNDUP4(MP3CDG_ABV_end + 200)#define MP3CDG_MEM_start        RNDUP4(SHARE_end - CDG_share_size)#define MP3CDG_DISPMEM_start	RNDUP4(MP3CDG_MEM_start) /* CDG */#define MP3CDG_STACK_start	RNDUP4(MP3CDG_DISPMEM_end)#define MP3CDG_YUV_start	RNDUP4(MP3CDG_STACK_end)#define MP3CDG_BLK_start	RNDUP4(MP3CDG_YUV_end)#endif#define CDG_DISPMEM_start	RNDUP4(CDG_MEM_start) /* CDG */#define CDG_STACK_start		RNDUP4(CDG_DISPMEM_end)#define CDG_YUV_start		RNDUP4(CDG_STACK_end)#define CDG_BLK_start		RNDUP4(CDG_YUV_end)#define WMA_DATA_start		(DISP_start + 38016)  /* WMA after I-frame */#define WMA_globals_start	RNDUP4(WMA_DATA_end)#define WMA_TBL_start		RNDUP4(WMA_globals_end)#define WMA_CODE_start		RNDUP4(WMA_TBL_end)#define WMA_HEAP_start		RNDUP4(WMA_CODE_end)#define WMA_ABV_start		RNDUP4(WMA_HEAP_end)#define AS_ABV_start		APP_SHARE_start		/* ANTI_SHOCK */#define PCM_volume_start	AS_ABV_end#define VC_ISO_start		RNDUP4(SHARE_end)#define AUDIO_start		RNDUP4(VC_ISO_end)#define EMPH_SAVE_start		RNDUP4(AUDIO_start)#define EMPH_BP_start		RNDUP4(EMPH_SAVE_end)#ifdef MP3#define Wj_start		RNDUP4(AUDIO_start)#define csf0_start		RNDUP4(Wj_end)#define csf1_start		RNDUP4(csf0_end)#define Ueven_start		RNDUP4(csf1_end)#define Uodd_start		RNDUP4(Ueven_end)#define v48_start		RNDUP4(Uodd_end)#else#define Wj_start		AUDIO_start#define csf0_start		Wj_start + 256#define csf1_start		csf0_start + 192#define Ueven_start		csf1_start + 64#define Uodd_start		Ueven_start + 256#define v48_start		Uodd_start + 224#define audio_end		v48_start + 36#endif#define LC_VBV_start		RNDUP4(AUDIO_end)#if 1#define LC_ISO_start		RNDUP4(GMBY_CODE_end) /* shared w/VBV */#else#define LC_ISO_start		RNDUP4(LC_VBV_start+2048) /* shared w/VBV */#endif#define UCODE_start		RNDUP4(LC_VBV_end)#define UCODE0_start		UCODE_start#define UCODE1_start		RNDUP4(UCODE0_end)#define ECHO_SAVE_start		RNDUP4(UCODE_end)#define MIC_start		RNDUP4(ECHO_SAVE_end)#define MIX_start		RNDUP4(MIC_end)#define RBUF_start		RNDUP4(MIX_end)#define RPRA_start		RNDUP4(RBUF_END)#define RHIS_start		RNDUP4(RPRA_end)#define DAE_start		RNDUP4(RHIS_end)#define DIFF_start		RNDUP4(DAE_end)#define BP_start		RNDUP4(DIFF_end)#define ECOEF_A_start		RNDUP4(BP_end)#define ECOEF_BC_start		RNDUP4(ECOEF_A_end)#define EGAIN_start		RNDUP4(ECOEF_BC_end)#define E20LOG_start		RNDUP4(EGAIN_end)#define EHIST_start		RNDUP4(E20LOG_end)#define EMAXVOL_start		RNDUP4(EHIST_end)#define QUANT_start		RNDUP4(EMAXVOL_end)#define PCM_start		RNDUP4(QUANT_end)#define BANK5_start             RNDUP4(PCM_end)#define CHROMA_start            RNDUP4(BANK5_end)#define PCM_zero_start		RNDUP4(CHROMA_end)#define CODE_start		RNDUP4(PCM_zero_end)#ifdef SCR_SAVER#ifdef C256#define SCRSAVER_size 16384       /* (256*256)/4 == 16384 */#else#define SCRSAVER_size 8192        /* (256*256)/8 == 8192 */#endif#else#define SCRSAVER_size 0#endif#define SCRSAVER_start  SHARE_start#define SCRSAVER_end    (SCRSAVER_start + SCRSAVER_size)/* the size */#ifdef TWO_FIELDS_OSD#define OP_OSD_LENGTH		(27440)#define OP_OSD_START		OSD_start#define OP_OSD_END		(OP_OSD_START + OP_OSD_LENGTH)#define CHARFONT_start		RNDUP4(OP_OSD_END)#define CHARFONT_size		1152#define OSD_size		(OP_OSD_LENGTH + CHARFONT_size) #else#define OSD_size		1920 /* 4 lines */#endif /* TWO_FIELDS_OSD */#ifdef VCDLC#define INFO_VCD_size           656#else/* Increase INFO_VCD_size by 52 DW to record mux_rate for all tracks */#define INFO_VCD_size           (656 + 52)#endif #ifdef MPEG1#define ADAM			128#ifdef VCDLC/* For LC code, Display,Audio and VBV memory needs to be grouped together * for Game memory reconfiguration..keep "VCD_VBV_.." for high level code.  */#define VC_VBV_size		0#define LC_VBV_size		(47 * 8 * ADAM / 4)#define VCD_VBV_size		LC_VBV_size#define VCD_VBV_start		LC_VBV_start#define VCD_VBV_end		LC_VBV_end#define VCD_ABV_size		(11 * ADAM)#else/* For full-feature code, VBV needs to be after ABV, since ANTI_SHOCK  * needs to use VBV for extra ABV space. */#define VC_VBV_size		(85 * 8 * ADAM / 4)#define LC_VBV_size		0#define VCD_VBV_size		VC_VBV_size #define VCD_VBV_start		VC_VBV_start#define VCD_VBV_end		VC_VBV_end#define VCD_ABV_size		(20 * ADAM)#endif /* VCDLC */#ifdef ABNORMAL_VCD#define ABNORMAL_ABV_size	8064#define ABNORMAL_VBV    	69120#else#define ABNORMAL_ABV_size	0#define ABNORMAL_VBV     	0#endif /* ABNORMAL_VCD */#ifdef ANTI_SHOCK#define AS_VCD_ABV_size		43008   /* (336*128) */#define AS_VCD_VBV_size    	215552  /* (842*256) */#endif /* ANTI_SHOCK */#endif /* MPEG1 */#ifdef LESS_DISP_MEM#define DISP_size		(104544 - 198 - 594)#else#define DISP_size		(104544 - 198)#endif /* LESS_DISP_MEM */#ifdef FLESHTONE#define GAMMA_size		128#else#define GAMMA_size		0#endif#ifdef VCDLC#define SHARE_size		0 /* No SHARE for LC */#else/* worst case determines the SHARE size */#define SHARE_size	biggest(JPEG_share_size,GMBY_share_size,\

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?