blob: 92020029eafa28b7693305de68abfaa14d73cf9f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
#include "ultra64.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
extern OSPiHandle* __osPiTable;
OSPiHandle __LeoDiskHandle;
OSPiHandle* __osDiskHandle;
OSPiHandle* osLeoDiskInit(void) {
u32 saveMask;
__LeoDiskHandle.type = DEVICE_TYPE_64DD;
__LeoDiskHandle.baseAddress = (u32)OS_PHYSICAL_TO_K1(ASIC_C2_BUFF);
__LeoDiskHandle.latency = 3;
__LeoDiskHandle.pulse = 6;
__LeoDiskHandle.pageSize = 6;
__LeoDiskHandle.relDuration = 2;
__LeoDiskHandle.domain = PI_DOMAIN2;
__LeoDiskHandle.speed = 0;
bzero(&__LeoDiskHandle.transferInfo, sizeof(__OSTranxInfo));
saveMask = __osDisableInt();
__LeoDiskHandle.next = __osPiTable;
__osPiTable = &__LeoDiskHandle;
__osDiskHandle = &__LeoDiskHandle;
__osRestoreInt(saveMask);
return &__LeoDiskHandle;
}
|