blob: 2116bc9e2af841ffd43ef6c8bc9810c9b8369f46 (
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
|
#include "ultra64.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
s32 LeoTestUnitReady(u8* status) {
volatile LEOCmdTestUnitReady cmdBlock;
if (!__leoActive) {
return -1;
}
if (IO_READ(PI_STATUS_REG) & PI_STATUS_DMA_BUSY) {
return LEO_ERROR_BUSY;
}
cmdBlock.header.command = 3;
cmdBlock.header.reserve1 = 0;
cmdBlock.header.control = 0;
cmdBlock.header.reserve3 = 0;
leoCommand((void*)&cmdBlock);
while (cmdBlock.header.status == 8) {}
*status = cmdBlock.test;
return GET_ERROR(cmdBlock);
}
|