platform ps2, handle audio similar to psp
[picodrive.git] / pico / misc.c
... / ...
CommitLineData
1/*\r
2 * rarely used EEPROM code\r
3 * (C) notaz, 2006-2008\r
4 *\r
5 * This work is licensed under the terms of MAME license.\r
6 * See COPYING file in the top-level directory.\r
7 */\r
8\r
9#include "pico_int.h"\r
10\r
11\r
12#ifndef _ASM_MISC_C\r
13PICO_INTERNAL_ASM void memcpy16bswap(unsigned short *dest, void *src, int count)\r
14{\r
15 unsigned char *src_ = src;\r
16\r
17 for (; count; count--, src_ += 2)\r
18 *dest++ = (src_[0] << 8) | src_[1];\r
19}\r
20\r
21#ifndef _ASM_MISC_C_AMIPS\r
22PICO_INTERNAL_ASM void memset32(void *dest_in, int c, int count)\r
23{\r
24 int *dest = dest_in;\r
25\r
26 for (; count >= 8; count -= 8, dest += 8)\r
27 dest[0] = dest[1] = dest[2] = dest[3] =\r
28 dest[4] = dest[5] = dest[6] = dest[7] = c;\r
29\r
30 switch (count) {\r
31 case 7: *dest++ = c;\r
32 case 6: *dest++ = c;\r
33 case 5: *dest++ = c;\r
34 case 4: *dest++ = c;\r
35 case 3: *dest++ = c;\r
36 case 2: *dest++ = c;\r
37 case 1: *dest++ = c;\r
38 }\r
39}\r
40void memset32_uncached(int *dest, int c, int count) { memset32(dest, c, count); }\r
41#endif\r
42#endif\r
43\r