セガサターンのエミュをみんなで作るスレ
■ このスレッドは過去ログ倉庫に格納されています
0753GNO
03/04/08 01:08ID:07uo5k+/コンパイルしてないので、思いっきりバグってたらゴメン!
#define MEM_TABLE_SIZE 0x10000L
#define MEM_BLOCK_SIZE 0x10000L
USHORT *gpMemPtrTable[MEM_TABLE_SIZE] = {NULL};
inline USHORT getMemW(ULONG adrs)
{
USHORT index = (USHORT)(((adrs << 8) & 0xFF00U) | ((adrs >> 8) & 0x00FFU));
USHORT data;
if(!gpMemPtrTable[index]) {
gpMemPtrTable[index] = (USHORT *)malloc(MEM_BLOCK_SIZE);
return 0;
}
data = gpMemPtrTable[index][((USHORT)(((adrs >> 8) & 0xFF00U) | ((adrs >> 24) & 0x00FFU))) >> 1];
return (USHORT)((data << 8) | (data >> 8));
}
inline void setMemW(ULONG adrs, USHORT data)
{
/* 省略 */
}
■ このスレッドは過去ログ倉庫に格納されています