1 /*------------------------------------------------------------- 2 3 gccore.h -- GC core header 4 5 Copyright (C) 2004 6 Michael Wiedenbauer (shagkur) 7 Dave Murphy (WinterMute) 8 9 This software is provided 'as-is', without any express or implied 10 warranty. In no event will the authors be held liable for any 11 damages arising from the use of this software. 12 13 Permission is granted to anyone to use this software for any 14 purpose, including commercial applications, and to alter it and 15 redistribute it freely, subject to the following restrictions: 16 17 1. The origin of this software must not be misrepresented; you 18 must not claim that you wrote the original software. If you use 19 this software in a product, an acknowledgment in the product 20 documentation would be appreciated but is not required. 21 22 2. Altered source versions must be plainly marked as such, and 23 must not be misrepresented as being the original software. 24 25 3. This notice may not be removed or altered from any source 26 distribution. 27 28 -------------------------------------------------------------*/ 29 30 #ifndef __GCCORE_H__ 31 #define __GCCORE_H__ 32 33 /*! \file gccore.h 34 \brief Core header which includes all subsequent subsystem headers 35 36 */ 37 38 #include "ogc/dsp.h" 39 #include "ogc/aram.h" 40 #include "ogc/arqueue.h" 41 #include "ogc/arqmgr.h" 42 #include "ogc/audio.h" 43 #include "ogc/cache.h" 44 #include "ogc/card.h" 45 #include "ogc/cast.h" 46 #include "ogc/color.h" 47 #include "ogc/consol.h" 48 #include "ogc/dvd.h" 49 #include "ogc/exi.h" 50 #include "ogc/gu.h" 51 #include "ogc/gx.h" 52 #include "ogc/si.h" 53 #include "ogc/gx_struct.h" 54 #include "ogc/irq.h" 55 #include "ogc/lwp.h" 56 #include "ogc/mutex.h" 57 #include "ogc/message.h" 58 #include "ogc/semaphore.h" 59 #include "ogc/pad.h" 60 #include "ogc/tpl.h" 61 #include "ogc/system.h" 62 #include "ogc/video.h" 63 #include "ogc/usbgecko.h" 64 #include "ogc/video_types.h" 65 #include "ogc/texconv.h" 66 67 #if defined(HW_RVL) 68 #include "ogc/ipc.h" 69 #include "ogc/es.h" 70 #include "ogc/stm.h" 71 #include "ogc/ios.h" 72 #include "ogc/usb.h" 73 #include "ogc/isfs.h" 74 #include "ogc/conf.h" 75 #include "ogc/usbstorage.h" 76 77 #include "ogc/wiilaunch.h" 78 79 #endif 80 81 /* 82 * Error returns 83 */ 84 #define RNC_FILE_IS_NOT_RNC -1 85 #define RNC_HUF_DECODE_ERROR -2 86 #define RNC_FILE_SIZE_MISMATCH -3 87 #define RNC_PACKED_CRC_ERROR -4 88 #define RNC_UNPACKED_CRC_ERROR -5 89 90 #ifndef ATTRIBUTE_ALIGN 91 # define ATTRIBUTE_ALIGN(v) __attribute__((aligned(v))) 92 #endif 93 #ifndef ATTRIBUTE_PACKED 94 # define ATTRIBUTE_PACKED __attribute__((packed)) 95 #endif 96 97 #ifdef __cplusplus 98 extern "C" { 99 #endif /* __cplusplus */ 100 101 /*! 102 * \mainpage 103 * 104 * - \subpage intro 105 * - \subpage api_doc 106 */ 107 108 /*! 109 * \page intro Introduction 110 * Welcome to the libOGC reference documentation. 111 */ 112 113 /*! 114 * \page api_doc Detailed API description 115 * 116 * - \ref aram.h "ARAM subsystem" 117 * - \ref arqmgr.h "ARAM queue management subsystem" 118 * - \ref audio.h "AUDIO subsystem" 119 * - \ref asndlib.h "ASND library" 120 * - \ref exi.h "EXI subsystem" 121 * - \ref irq.h "IRQ subsystem" 122 * - \ref dsp.h "DSP subsystem" 123 * - \ref dvd.h "DVD subsystem" 124 * - \ref gx.h "GX subsystem" 125 * - \ref gu.h "gu/Matrix subsystem" 126 * - \ref video.h "VIDEO subsystem" 127 * - \ref cache.h "Cache subsystem" 128 * - \ref card.h "Memory card subsystem" 129 * - \ref consol.h "Console subsystem" 130 * - \ref system.h "OS functions and initialization" 131 * - \ref lwp.h "Thread subsystem I" 132 * - \ref message.h "Thread subsystem II" 133 * - \ref mutex.h "Thread subsystem III" 134 * - \ref semaphore.h "Thread subsystem IV" 135 * - \ref cond.h "Thread subsystem V" 136 */ 137 138 s32 depackrnc1_ulen(void *packed); 139 s32 depackrnc1(void *packed,void *unpacked); 140 141 void depackrnc2(void *packed,void *unpacked); 142 143 #ifdef __cplusplus 144 } 145 #endif /* __cplusplus */ 146 147 #endif 148