mirror of https://github.com/red-prig/fpPS4.git
This commit is contained in:
parent
272634e790
commit
23b8f63cec
|
@ -62,6 +62,57 @@ type
|
|||
size :QWORD;
|
||||
end;
|
||||
|
||||
p_set_prt_aperture=^t_set_prt_aperture;
|
||||
t_set_prt_aperture=packed record
|
||||
addr :Pointer;
|
||||
len :QWORD;
|
||||
apertureId:Integer;
|
||||
end;
|
||||
|
||||
function set_prt_aperture(data:p_set_prt_aperture):Integer;
|
||||
var
|
||||
addr:QWORD;
|
||||
len :QWORD;
|
||||
begin
|
||||
Result:=0;
|
||||
|
||||
addr:=QWORD(data^.addr);
|
||||
|
||||
if ((addr and $3fff) <> 0) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
len:=data^.len;
|
||||
|
||||
if ((QWORD($fc00000000) - addr) < len) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
if (DWORD((addr - QWORD($1000000000)) shr 34) > 58) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
if (Int64(len) < 0) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
if (DWORD(data^.apertureId) > 2) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
if ((len and $3fff) <> 0) then
|
||||
begin
|
||||
Exit(EINVAL);
|
||||
end;
|
||||
|
||||
Writeln('TODO:set_prt_aperture(0x',HexStr(addr,10),',0x',HexStr(len,10),',',data^.apertureId,')');
|
||||
end;
|
||||
|
||||
Function dmem_ioctl(dev:p_cdev;cmd:QWORD;data:Pointer;fflag:Integer):Integer;
|
||||
var
|
||||
dmap:p_dmem_obj;
|
||||
|
@ -143,6 +194,11 @@ begin
|
|||
Result:=dmem_map_get_memory_type(dmap^.dmem,data);
|
||||
end;
|
||||
|
||||
$80188008: //sceKernelSetPrtAperture
|
||||
begin
|
||||
set_prt_aperture(data);
|
||||
end;
|
||||
|
||||
else
|
||||
begin
|
||||
print_error_td('dmem_ioctl(0x'+HexStr(cmd,8)+')');
|
||||
|
|
|
@ -683,7 +683,7 @@ var
|
|||
),
|
||||
(//[125]
|
||||
sy_narg:3;
|
||||
sy_call:nil;
|
||||
sy_call:@sys_netgetiflist;
|
||||
sy_name:'sys_netgetiflist'
|
||||
),
|
||||
(//[126]
|
||||
|
|
|
@ -5,7 +5,8 @@ unit kern_bnet;
|
|||
|
||||
interface
|
||||
|
||||
function sys_netcontrol(fd,op:Integer;buf:Pointer;nbuf:DWORD):Integer;
|
||||
function sys_netcontrol (fd,op:Integer;buf:Pointer;nbuf:DWORD):Integer;
|
||||
function sys_netgetiflist(param1:Pointer;param2,param3:Integer):Integer;
|
||||
|
||||
implementation
|
||||
|
||||
|
@ -90,7 +91,11 @@ begin
|
|||
end;
|
||||
end;
|
||||
|
||||
|
||||
function sys_netgetiflist(param1:Pointer;param2,param3:Integer):Integer;
|
||||
begin
|
||||
Writeln('TODO:sys_netgetiflist(0x',HexStr(QWORD(param1),10),',',param2,',',param3,')');
|
||||
Result:=0;
|
||||
end;
|
||||
|
||||
|
||||
end.
|
||||
|
|
Loading…
Reference in New Issue