@@ -280,7 +280,7 @@ procedure TDSKFileSystem.TryPlus3DOSHeader(Data: array of byte; DiskFile: TDSKFi
280280 Sig: string;
281281 CalcChecksum: byte;
282282 Idx: integer;
283- Length, Param1, Param2 : word;
283+ Param1: word;
284284begin
285285 Sig := StrBlockClean(Data, 0 , 8 );
286286 if Sig <> ' PLUS3DOS' then exit;
@@ -294,9 +294,7 @@ procedure TDSKFileSystem.TryPlus3DOSHeader(Data: array of byte; DiskFile: TDSKFi
294294 DiskFile.Size := Data[11 ] + (Data[12 ] << 8 ) + (Data[13 ] << 16 ) + (Data[14 ] << 24 );
295295 DiskFile.HeaderSize := 128 ;
296296
297- Length := Data[16 ] + (Data[17 ] << 8 );
298297 Param1 := Data[18 ] + (Data[19 ] << 8 );
299- Param2 := Data[20 ] + (Data[21 ] << 8 );
300298
301299 case Data[15 ] of
302300 0 : begin
@@ -307,7 +305,7 @@ procedure TDSKFileSystem.TryPlus3DOSHeader(Data: array of byte; DiskFile: TDSKFi
307305 end ;
308306 1 : DiskFile.Meta := Format(' DATA %s(%d)' , [char(Data[19 ] - 64 ), Data[129 ] + (Data[130 ] << 8 )]);
309307 2 : DiskFile.Meta := Format(' DATA %s$(%d)' , [char(Data[19 ] - 128 ), Data[129 ] + (Data[130 ] << 8 )]);
310- 3 : DiskFile.Meta := Format(' CODE %d,%d' , [Param1, Length ]);
308+ 3 : DiskFile.Meta := Format(' CODE %d,%d' , [Param1, Data[ 16 ] + (Data[ 17 ] << 8 ) ]);
311309 else
312310 DiskFile.Meta := Format(' Custom 0x%x' , [Data[15 ]]);
313311 end ;
0 commit comments