fix: Correction des fonctions d'accès à la mémoire

This commit is contained in:
Nicolas Hordé 2007-04-02 14:34:45 +00:00
parent ebc947f06d
commit 252515be4a
1 changed files with 46 additions and 46 deletions

View File

@ -1,46 +1,46 @@
#include "types.h" #include "types.h"
/*******************************************************************************/ /*******************************************************************************/
/* Copie un octet une ou plusieurs fois en mémoire */ /* Copie un octet une ou plusieurs fois en mémoire */
void memset(void *dst, u8 val, u32 count,u32 size) void memset(void *dst, u8 val, u32 count,u32 size)
{ {
u8 *temp; u8 *temp;
for(temp = (u8 *)dst; count != 0; count--) for(temp = (u8 *)dst; count != 0; count--)
{ {
temp+=size; temp+=size;
*temp = val; *temp = val;
} }
} }
/*******************************************************************************/ /*******************************************************************************/
/* Copie une portion de mémoire vers une autre */ /* Copie une portion de mémoire vers une autre */
void memcpy(void *src, void *dst, u32 count, u32 size) void memcpy(void *src, void *dst, u32 count, u32 size)
{ {
char *s, *d; char *s, *d;
u32 i; u32 i;
s = (u8*) src; s = (u8*) src;
d = (u8*) dst; d = (u8*) dst;
for(i=0;i<count;i++){ for(i=0;i<count;i++){
*(d+i*size) = *(s+i); *(d+i*size) = *(s+i);
} }
} }
/*******************************************************************************/ /*******************************************************************************/
/* Compare 2 portions de mémoire */ /* Compare 2 portions de mémoire */
u32 memcmp(void *src, void *dst, u32 count, u32 size) u32 memcmp(void *src, void *dst, u32 count, u32 size)
{ {
const u8 *mem1 = (const u8 *)src; const u8 *mem1 = (const u8 *)src;
const u8 *mem2 = (const u8 *)dst; const u8 *mem2 = (const u8 *)dst;
for(; count != 0; count--) for(; count != 0; count--)
{ {
if(*mem1 != *mem2) if(*mem1 != *mem2)
return *mem1 - *mem2; return *mem1 - *mem2;
mem1+=size; mem1+=size;
mem2+=size; mem2+=size;
} }
} }
/*******************************************************************************/ /*******************************************************************************/