This commit is contained in:
Pavel 2024-05-15 16:43:55 +03:00
parent a5a7a4efb1
commit bd27300004
2 changed files with 57 additions and 28 deletions

View File

@ -6,6 +6,7 @@ unit pm4_me;
interface
uses
sysutils,
mqueue,
LFQueue,
@ -182,6 +183,13 @@ begin
GPU_REGS.CX_REG:=CX_REG;
GPU_REGS.UC_REG:=UC_REG;
for i:=0 to 31 do
begin
Assert(CX_REG^.SPI_PS_INPUT_CNTL[i].OFFSET =0,'SPI_PS_INPUT_CNTL['+IntToStr(i)+']='+IntToStr(CX_REG^.SPI_PS_INPUT_CNTL[i].OFFSET ));
Assert(CX_REG^.SPI_PS_INPUT_CNTL[i].DEFAULT_VAL=0,'SPI_PS_INPUT_CNTL['+IntToStr(i)+']='+IntToStr(CX_REG^.SPI_PS_INPUT_CNTL[i].DEFAULT_VAL));
Assert(CX_REG^.SPI_PS_INPUT_CNTL[i].FLAT_SHADE =0,'SPI_PS_INPUT_CNTL['+IntToStr(i)+']='+IntToStr(CX_REG^.SPI_PS_INPUT_CNTL[i].FLAT_SHADE ));
end;
{fdump_ps:=}DumpPS(GPU_REGS);
{fdump_vs:=}DumpVS(GPU_REGS);

View File

@ -432,36 +432,45 @@ begin
FGameList.FGrid:=ListGrid;
//load config
m:=nil;
JReader:=nil;
try
m:=TMemoryStream.Create;
m.LoadFromFile(fpps4File);
JReader:=TJSONStreamReader.Create(m,[joUTF8,joComments]);
JReader.Execute(FConfigInfo);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
if FileExists(fpps4File) then
begin
m:=nil;
JReader:=nil;
try
m:=TMemoryStream.Create;
m.LoadFromFile(fpps4File);
JReader:=TJSONStreamReader.Create(m,[joUTF8,joComments]);
JReader.Execute(FConfigInfo);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
end;
FreeAndNil(JReader);
FreeAndNil(m);
end;
FreeAndNil(JReader);
obj:=TGameListObject.Create;
obj.GameList:=FGameList;
//load game list
m.Clear;
try
m:=TMemoryStream.Create;
m.LoadFromFile(GameListFile);
JReader:=TJSONStreamReader.Create(m,[joUTF8,joComments]);
JReader.Execute(obj);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
end;
FreeAndNil(JReader);
if FileExists(GameListFile) then
begin
obj:=TGameListObject.Create;
obj.GameList:=FGameList;
FreeAndNil(obj);
m:=nil;
JReader:=nil;
try
m:=TMemoryStream.Create;
m.LoadFromFile(GameListFile);
JReader:=TJSONStreamReader.Create(m,[joUTF8,joComments]);
JReader.Execute(obj);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
end;
FreeAndNil(JReader);
FreeAndNil(m);
FreeAndNil(obj);
end;
//update grid
C:=FGameList.GetArrayCount;
@ -494,7 +503,13 @@ begin
FreeAndNil(jstream);
FreeAndNil(list);
M.SaveToFile(GameListFile);
try
M.SaveToFile(GameListFile);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
end;
FreeAndNil(M);
end;
@ -858,7 +873,13 @@ begin
FConfigInfo.WriteJSON('',jstream);
FreeAndNil(jstream);
M.SaveToFile(fpps4File);
try
M.SaveToFile(fpps4File);
except
on E: Exception do
MessageDlgEx(E.Message,mtError,[mbOK],Self);
end;
FreeAndNil(M);
end;