~ppsspp/ppsspp/ppsspp-1.1.1

« back to all changes in this revision

Viewing changes to Core/HLE/sceKernelModule.h

  • Committer: Sérgio Benjamim
  • Date: 2015-10-17 01:37:55 UTC
  • Revision ID: sergio_br2@yahoo.com.br-20151017013755-avrlz2pt37kwt43x
PPSSPP 1.1.1 source.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
// Copyright (c) 2012- PPSSPP Project.
 
2
 
 
3
// This program is free software: you can redistribute it and/or modify
 
4
// it under the terms of the GNU General Public License as published by
 
5
// the Free Software Foundation, version 2.0 or later versions.
 
6
 
 
7
// This program is distributed in the hope that it will be useful,
 
8
// but WITHOUT ANY WARRANTY; without even the implied warranty of
 
9
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
10
// GNU General Public License 2.0 for more details.
 
11
 
 
12
// A copy of the GPL 2.0 should have been included with the program.
 
13
// If not, see http://www.gnu.org/licenses/
 
14
 
 
15
// Official git repository and contact information can be found at
 
16
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
 
17
 
 
18
#pragma once
 
19
 
 
20
#include <string>
 
21
#include "Core/HLE/sceKernel.h"
 
22
 
 
23
struct PspModuleInfo {
 
24
        u16_le moduleAttrs; //0x0000 User Mode, 0x1000 Kernel Mode
 
25
        u16_le moduleVersion;
 
26
        // 28 bytes of module name, packed with 0's.
 
27
        char name[28];
 
28
        u32_le gp;               // ptr to MIPS GOT data  (global offset table)
 
29
        u32_le libent;           // ptr to .lib.ent section
 
30
        u32_le libentend;        // ptr to end of .lib.ent section
 
31
        u32_le libstub;          // ptr to .lib.stub section
 
32
        u32_le libstubend;       // ptr to end of .lib.stub section
 
33
};
 
34
 
 
35
class PointerWrap;
 
36
 
 
37
KernelObject *__KernelModuleObject();
 
38
void __KernelModuleDoState(PointerWrap &p);
 
39
void __KernelModuleShutdown();
 
40
 
 
41
u32 __KernelGetModuleGP(SceUID module);
 
42
bool __KernelLoadExec(const char *filename, u32 paramPtr, std::string *error_string);
 
43
void __KernelReturnFromModuleFunc();
 
44
u32 hleKernelStopUnloadSelfModuleWithOrWithoutStatus(u32 exitCode, u32 argSize, u32 argp, u32 statusAddr, u32 optionAddr, bool WithStatus);
 
45
 
 
46
void Register_ModuleMgrForUser();
 
47
void Register_ModuleMgrForKernel();
 
 
b'\\ No newline at end of file'