| 139 |  | procedure TForm_BinEdit.LoadDat(_fileid: Integer); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 140 |  | var | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 141 |  | mem:  TMemoryStream; | 
 
 
 
 
 
 
 
 
 | 142 | – | Data: TByteData; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 142 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 143 |  | if ConID <> -1 then | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 144 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 181 |  | var | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 182 |  | Data: TByteData; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 183 |  | i:    Word; | 
 
 
 
 
 
 
 
 | 184 | + | tempi: Integer; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 185 |  | floatformat: TFormatSettings; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 186 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 187 |  | floatformat.DecimalSeparator := '.'; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 217 |  | 10: | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 218 |  | Result := IntToBin(hex.Data[offset]); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 219 |  | 11: | 
 
 
 
 
 
 
 
 
 
 
 | 220 | < | Result := '0x' + IntToHex(ConManager.Connection[ConID].GetRawInfo(fileid, offset).RawAddr, 8); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 220 | > | begin | 
 
 
 
 
 | 221 | > | tempi := ConManager.Connection[ConID].GetRawInfo(fileid, offset).RawAddr; | 
 
 
 
 
 | 222 | > | if tempi >= 0 then | 
 
 
 
 
 | 223 | > | Result := '0x' + IntToHex(tempi, 8) | 
 
 
 
 
 | 224 | > | else | 
 
 
 
 
 | 225 | > | Result := 'unused'; | 
 
 
 
 
 | 226 | > | end; | 
 
 
 
 
 
 
 
 
 
 
 | 227 |  | 12: | 
 
 
 
 
 
 
 
 
 
 
 | 228 | < | Result := FormatNumber(hex.Data[offset + 1] + hex.Data[offset + 2] * 256 + | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 229 | < | hex.Data[offset + 3] * 256 * 256, 5, '0'); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 228 | > | if hex.Data[offset] = 1 then | 
 
 
 
 
 | 229 | > | Result := FormatNumber(hex.Data[offset + 1] + hex.Data[offset + 2] * 256 + | 
 
 
 
 
 | 230 | > | hex.Data[offset + 3] * 256 * 256, 5, '0') | 
 
 
 
 
 | 231 | > | else | 
 
 
 
 
 | 232 | > | Result := 'no link'; | 
 
 
 
 
 
 
 
 
 
 
 | 233 |  | 13: | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 234 |  | Result := IntToStr(hex.Data[offset]); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 235 |  | 14: | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 316 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 317 |  | if Pos('#', SubName) > 0 then | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 318 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 | 319 | < | Data.Offset  := HexToLong(MidStr(SubName, Pos('#', SubName) + 1, 8)); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 320 | < | Data.Value   := | 
 
 
 
 
 
 
 
 
 | 319 | > | Data.Offset  := StrToInt('$'+MidStr(SubName, Pos('#', SubName) + 1, 8)); | 
 
 
 
 
 | 320 | > | Data.Value   := '$' + | 
 
 
 
 
 
 
 
 
 
 
 | 321 |  | MidStr(SubName, PosEx('#', SubName, Pos('#', SubName) + 1) + 1, 8); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 322 |  | Data.Caption := MidStr(SubName, 1, Pos('#', SubName) - 1); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 323 |  | Data.Description := SubDesc; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 757 |  | end | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 758 |  | else | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 759 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 | 760 | < | if nodedata.DataType = 11 then | 
 
 
 
 
 
 
 
 
 | 760 | > | if (nodedata.DataType = 11) and (nodedata.Value <> 'unused') then | 
 
 
 
 
 
 
 
 
 
 
 | 761 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 762 |  | if ConManager.Connection[ConID].GetRawInfo(fileid, nodedata.offset).RawSize > 0 then | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 763 |  | Form_Main.open_child('rawedit', ConID, fileid); | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 764 |  | end; | 
 
 
 
 
 
 
 
 
 
 
 | 765 | < | if nodedata.DataType = 12 then | 
 
 
 
 
 
 
 
 
 | 765 | > | if (nodedata.DataType = 12) and (nodedata.Value <> 'no link') then | 
 
 
 
 
 
 
 
 
 
 
 | 766 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 767 |  | if (StrToInt(nodedata.Value) < ConManager.Connection[ConID].GetFileCount) and | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 768 |  | (StrToInt(nodedata.Value) > 0) and | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 802 |  | else | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 803 |  | begin | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 804 |  | hex.SelStart := Data.Offset; | 
 
 
 
 
 
 
 
 
 
 
 | 805 | < | hex.SelEnd   := Data.Offset + HexToLong(Data.Value) - 1; | 
 
 
 
 
 
 
 
 
 | 805 | > | hex.SelEnd   := Data.Offset + StrToInt(Data.Value) - 1; | 
 
 
 
 
 
 
 
 
 
 
 | 806 |  | end; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 807 |  | end; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 808 |  |  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 833 |  | if Data.DataType > 0 then | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 834 |  | CellText := Data.Value //GetValue(data.DataType, data.Offset) | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 835 |  | else if Length(Data.Value) > 0 then | 
 
 
 
 
 
 
 
 
 
 
 | 836 | < | CellText := IntToStr(HexToLong(Data.Value)) + ' Bytes'; | 
 
 
 
 
 
 
 
 
 | 836 | > | CellText := IntToStr(StrToInt(Data.Value)) + ' Bytes'; | 
 
 
 
 
 
 
 
 
 
 
 | 837 |  | 4: | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 838 |  | CellText := Data.Description; | 
 
 
 
 
 
 
 
 
 
 
 
 
 | 839 |  | end; |