ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
smem.c File Reference
#include <kernel.h>
#include <string.h>
#include "smem.h"
+ Include dependency graph for smem.c:

Go to the source code of this file.

Functions

u32 smem_read (void *addr, void *buf, u32 size)
 
u32 smem_write (void *addr, void *buf, u32 size)
 

Detailed Description

Sub-CPU RAM direct access.

Definition in file smem.c.

Function Documentation

◆ smem_read()

u32 smem_read ( void *  addr,
void *  buf,
u32  size 
)

Definition at line 21 of file smem.c.

22 {
23  DI();
25 
26  memcpy(buf, addr + SUB_VIRT_MEM, size);
27 
28  ee_kmode_exit();
29  EI();
30 
31  return size;
32 }
static int ee_kmode_exit()
Definition: kernel.h:198
static int ee_kmode_enter()
Definition: kernel.h:181
#define DI
Definition: kernel.h:24
#define EI
Definition: kernel.h:25
#define SUB_VIRT_MEM
Definition: smem.h:36

References DI, ee_kmode_enter(), ee_kmode_exit(), EI, and SUB_VIRT_MEM.

◆ smem_write()

u32 smem_write ( void *  addr,
void *  buf,
u32  size 
)

Definition at line 34 of file smem.c.

35 {
36  DI();
38 
39  memcpy(addr + SUB_VIRT_MEM, buf, size);
40 
41  ee_kmode_exit();
42  EI();
43 
44  return size;
45 }

References DI, ee_kmode_enter(), ee_kmode_exit(), EI, and SUB_VIRT_MEM.