View Issue Details

IDProjectCategoryView StatusLast Update
0024525LazarusPatchpublic2013-06-27 17:22
ReporterDenis VolodarskyAssigned ToMartin Friebe 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product VersionProduct Build 
Target Version1.2.0Fixed in Version1.1 (SVN) 
Summary0024525: Updated fpdebug to be compilable.
DescriptionMostly unit names are updated, added few helper functions and project file for fpdebug.
Tagsfpdebug
Fixed in Revision41921
LazTarget1.2
WidgetsetWin32/Win64
Attached Files
  • fpdbg.patch (16,477 bytes)
    Index: debugger/fpdebug/dbgsymbols.pas
    ===================================================================
    --- debugger/fpdebug/dbgsymbols.pas	(revision 41474)
    +++ debugger/fpdebug/dbgsymbols.pas	(working copy)
    @@ -38,13 +38,33 @@
     interface
     
     uses
    -  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
    +  Windows, Classes, SysUtils,
    +  DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
       
     
     procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
     
     implementation
     
    +{$region 'Compatibility Functions'}
    +function HexValue(AValue: QWord; ADigits: integer; const AArgs: array of const): string;
    +begin
    +  Result := '$' + IntToHex(AValue, ADigits);
    +end;
    +
    +procedure Log(const AText: string); inline;
    +begin
    +  if IsConsole then
    +    WriteLn(AText);
    +end;
    +
    +procedure Log(const AFormat: string; const AArgs: array of const); overload;
    +begin
    +  Log(Format(AFormat, AArgs));
    +end;
    +
    +{$endregion 'Compatibility Functions'}
    +
     procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
     var
       ModulePtr: Pointer;
    Index: debugger/fpdebug/fpd/fpd.lpi
    ===================================================================
    --- debugger/fpdebug/fpd/fpd.lpi	(revision 0)
    +++ debugger/fpdebug/fpd/fpd.lpi	(working copy)
    @@ -0,0 +1,85 @@
    +<?xml version="1.0"?>
    +<CONFIG>
    +  <ProjectOptions>
    +    <Version Value="9"/>
    +    <PathDelim Value="\"/>
    +    <General>
    +      <Flags>
    +        <MainUnitHasCreateFormStatements Value="False"/>
    +        <MainUnitHasTitleStatement Value="False"/>
    +        <UseDefaultCompilerOptions Value="True"/>
    +      </Flags>
    +      <SessionStorage Value="InProjectDir"/>
    +      <MainUnit Value="0"/>
    +      <Title Value="fpd"/>
    +      <UseAppBundle Value="False"/>
    +      <ResourceType Value="res"/>
    +    </General>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
    +    <VersionInfo>
    +      <StringTable ProductVersion=""/>
    +    </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
    +    <PublishOptions>
    +      <Version Value="2"/>
    +      <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
    +    </PublishOptions>
    +    <RunParams>
    +      <local>
    +        <FormatVersion Value="1"/>
    +      </local>
    +    </RunParams>
    +    <RequiredPackages Count="1">
    +      <Item1>
    +        <PackageName Value="LCLBase"/>
    +      </Item1>
    +    </RequiredPackages>
    +    <Units Count="2">
    +      <Unit0>
    +        <Filename Value="fpd.lpr"/>
    +        <IsPartOfProject Value="True"/>
    +      </Unit0>
    +      <Unit1>
    +        <Filename Value="..\dbgclasses.pp"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgclasses"/>
    +      </Unit1>
    +    </Units>
    +  </ProjectOptions>
    +  <CompilerOptions>
    +    <Version Value="11"/>
    +    <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpd"/>
    +    </Target>
    +    <SearchPaths>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
    +    </SearchPaths>
    +    <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
    +      <CompilerPath Value="$(CompPath)"/>
    +    </Other>
    +  </CompilerOptions>
    +  <Debugging>
    +    <Exceptions Count="3">
    +      <Item1>
    +        <Name Value="EAbort"/>
    +      </Item1>
    +      <Item2>
    +        <Name Value="ECodetoolError"/>
    +      </Item2>
    +      <Item3>
    +        <Name Value="EFOpenError"/>
    +      </Item3>
    +    </Exceptions>
    +  </Debugging>
    +</CONFIG>
    Index: debugger/fpdebug/fpd/fpdcommand.pas
    ===================================================================
    --- debugger/fpdebug/fpd/fpdcommand.pas	(revision 41474)
    +++ debugger/fpdebug/fpd/fpdcommand.pas	(working copy)
    @@ -36,7 +36,8 @@
     interface
     
     uses
    -  SysUtils, Classes, Windows, DbgWinExtra, DbgClasses, LCLProc;
    +  SysUtils, Classes, Windows, LCLProc,
    +  DbgWinExtra, DbgClasses;
     
     procedure HandleCommand(ACommand: String);
     
    Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpi
    ===================================================================
    --- debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(revision 41474)
    +++ debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(working copy)
    @@ -1,26 +1,36 @@
     <?xml version="1.0"?>
     <CONFIG>
       <ProjectOptions>
    +    <Version Value="9"/>
         <PathDelim Value="\"/>
    -    <Version Value="7"/>
         <General>
    +      <Flags>
    +        <MainUnitHasCreateFormStatements Value="False"/>
    +        <MainUnitHasTitleStatement Value="False"/>
    +      </Flags>
    +      <SessionStorage Value="InProjectDir"/>
           <MainUnit Value="0"/>
    -      <TargetFileExt Value=".exe"/>
    -      <ActiveEditorIndexAtStart Value="3"/>
    +      <Title Value="fpdumpdwarf"/>
    +      <UseAppBundle Value="False"/>
    +      <ResourceType Value="res"/>
         </General>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
         <VersionInfo>
    -      <ProjectVersion Value=""/>
    +      <StringTable ProductVersion=""/>
         </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
         <PublishOptions>
           <Version Value="2"/>
    -      <IgnoreBinaries Value="False"/>
           <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    -      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
         </PublishOptions>
         <RunParams>
           <local>
             <FormatVersion Value="1"/>
    -        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
           </local>
         </RunParams>
         <RequiredPackages Count="1">
    @@ -28,86 +38,33 @@
             <PackageName Value="LCL"/>
           </Item1>
         </RequiredPackages>
    -    <Units Count="4">
    +    <Units Count="2">
           <Unit0>
             <Filename Value="fpdumpdwarf.lpr"/>
             <IsPartOfProject Value="True"/>
    -        <CursorPos X="45" Y="12"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="0"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
           </Unit0>
           <Unit1>
    -        <Filename Value="..\dbgclasses.pp"/>
    -        <UnitName Value="DbgClasses"/>
    -        <CursorPos X="22" Y="4"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="1"/>
    -        <UsageCount Value="10"/>
    -        <Loaded Value="True"/>
    +        <Filename Value="..\dbgdwarf.pas"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgdwarf"/>
           </Unit1>
    -      <Unit2>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <UnitName Value="DbgDwarf"/>
    -        <CursorPos X="12" Y="1621"/>
    -        <TopLine Value="1601"/>
    -        <EditorIndex Value="2"/>
    -        <UsageCount Value="10"/>
    -        <Loaded Value="True"/>
    -      </Unit2>
    -      <Unit3>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <UnitName Value="DbgSymbols"/>
    -        <CursorPos X="102" Y="49"/>
    -        <TopLine Value="23"/>
    -        <EditorIndex Value="3"/>
    -        <UsageCount Value="10"/>
    -        <Bookmarks Count="1">
    -          <Item0 X="35" Y="109" ID="1"/>
    -        </Bookmarks>
    -        <Loaded Value="True"/>
    -      </Unit3>
         </Units>
    -    <JumpHistory Count="7" HistoryIndex="6">
    -      <Position1>
    -        <Filename Value="..\dbgclasses.pp"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position1>
    -      <Position2>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position2>
    -      <Position3>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1105" Column="29" TopLine="1096"/>
    -      </Position3>
    -      <Position4>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1122" Column="29" TopLine="1087"/>
    -      </Position4>
    -      <Position5>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1268" Column="35" TopLine="1250"/>
    -      </Position5>
    -      <Position6>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position6>
    -      <Position7>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <Caret Line="42" Column="3" TopLine="31"/>
    -      </Position7>
    -    </JumpHistory>
       </ProjectOptions>
       <CompilerOptions>
    -    <Version Value="8"/>
    +    <Version Value="11"/>
         <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpdumpdwarf"/>
    +    </Target>
         <SearchPaths>
    -      <IncludeFiles Value="$(ProjOutDir)\"/>
    -      <OtherUnitFiles Value="..\"/>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
         </SearchPaths>
         <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
           <CompilerPath Value="$(CompPath)"/>
         </Other>
       </CompilerOptions>
    Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpr
    ===================================================================
    --- debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(revision 41474)
    +++ debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(working copy)
    @@ -36,8 +36,8 @@
     {$mode objfpc}{$H+}
     
     uses
    -  Classes, Windows, SysUtils, WinDDwarf, WinDPETypes, WinDDwarfConst,
    -  WinDSymbols, WinDLoader, maps;
    +  Classes, Windows, SysUtils, maps,
    +  DbgPETypes, DbgDwarfConst, DbgSymbols, DbgLoader, DbgDwarf;
     
     var
       n, idx: Integer;
    Index: debugger/fpdebug/test/asmtest.lpi
    ===================================================================
    --- debugger/fpdebug/test/asmtest.lpi	(revision 41474)
    +++ debugger/fpdebug/test/asmtest.lpi	(working copy)
    @@ -1,25 +1,33 @@
     <?xml version="1.0"?>
     <CONFIG>
       <ProjectOptions>
    +    <Version Value="9"/>
         <PathDelim Value="\"/>
    -    <Version Value="5"/>
         <General>
    +      <SessionStorage Value="InProjectDir"/>
           <MainUnit Value="0"/>
    -      <IconPath Value="./"/>
    -      <TargetFileExt Value=".exe"/>
    -      <ActiveEditorIndexAtStart Value="0"/>
    +      <Title Value="asmtest"/>
    +      <ResourceType Value="res"/>
    +      <UseXPManifest Value="True"/>
    +      <Icon Value="0"/>
         </General>
    -    <LazDoc Paths=""/>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
    +    <VersionInfo>
    +      <StringTable ProductVersion=""/>
    +    </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
         <PublishOptions>
           <Version Value="2"/>
    -      <IgnoreBinaries Value="False"/>
           <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    -      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
         </PublishOptions>
         <RunParams>
           <local>
             <FormatVersion Value="1"/>
    -        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
           </local>
         </RunParams>
         <RequiredPackages Count="1">
    @@ -27,41 +35,37 @@
             <PackageName Value="LCL"/>
           </Item1>
         </RequiredPackages>
    -    <Units Count="2">
    +    <Units Count="3">
           <Unit0>
             <Filename Value="asmtest.lpr"/>
             <IsPartOfProject Value="True"/>
    -        <UnitName Value="asmtest"/>
    -        <CursorPos X="70" Y="18"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="2"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
           </Unit0>
           <Unit1>
    +        <Filename Value="..\dbgdisasx86.pp"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgdisasx86"/>
    +      </Unit1>
    +      <Unit2>
             <Filename Value="asmtestunit.pas"/>
    +        <IsPartOfProject Value="True"/>
             <ComponentName Value="Form1"/>
    -        <IsPartOfProject Value="True"/>
    -        <ResourceFilename Value="asmtestunit.lrs"/>
    +        <HasResources Value="True"/>
    +        <ResourceBaseClass Value="Form"/>
             <UnitName Value="AsmTestUnit"/>
    -        <CursorPos X="34" Y="53"/>
    -        <TopLine Value="43"/>
    -        <EditorIndex Value="0"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
    -      </Unit1>
    +      </Unit2>
         </Units>
       </ProjectOptions>
       <CompilerOptions>
    -    <Version Value="5"/>
    +    <Version Value="11"/>
         <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\asmtest"/>
    +    </Target>
         <SearchPaths>
    -      <OtherUnitFiles Value="..\"/>
    -      <SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
         </SearchPaths>
    -    <CodeGeneration>
    -      <Generate Value="Faster"/>
    -    </CodeGeneration>
         <Linking>
           <Options>
             <Win32>
    @@ -70,8 +74,23 @@
           </Options>
         </Linking>
         <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
           <CompilerPath Value="$(CompPath)"/>
         </Other>
    -    <CompileReasons Run="False"/>
       </CompilerOptions>
    +  <Debugging>
    +    <Exceptions Count="3">
    +      <Item1>
    +        <Name Value="EAbort"/>
    +      </Item1>
    +      <Item2>
    +        <Name Value="ECodetoolError"/>
    +      </Item2>
    +      <Item3>
    +        <Name Value="EFOpenError"/>
    +      </Item3>
    +    </Exceptions>
    +  </Debugging>
     </CONFIG>
    Index: debugger/fpdebug/test/asmtest.lpr
    ===================================================================
    --- debugger/fpdebug/test/asmtest.lpr	(revision 41474)
    +++ debugger/fpdebug/test/asmtest.lpr	(working copy)
    @@ -7,8 +7,9 @@
       cthreads,
       {$ENDIF}{$ENDIF}
       Interfaces, // this includes the LCL widgetset
    -  Forms
    -  { add your units here }, AsmTestUnit;
    +  Forms,
    +  AsmTestUnit,
    +  dbgdisasx86;
     
     begin
       Application.Initialize;
    Index: debugger/fpdebug/test/asmtestunit.lfm
    ===================================================================
    --- debugger/fpdebug/test/asmtestunit.lfm	(revision 41474)
    +++ debugger/fpdebug/test/asmtestunit.lfm	(working copy)
    @@ -1,34 +1,36 @@
     object Form1: TForm1
    -  Caption = 'AsmTest'
    -  ClientHeight = 224
    -  ClientWidth = 400
    -  PixelsPerInch = 120
    -  HorzScrollBar.Page = 399
    -  VertScrollBar.Page = 223
       Left = 435
       Height = 224
       Top = 232
       Width = 400
    +  HorzScrollBar.Page = 399
    +  VertScrollBar.Page = 223
    +  Caption = 'AsmTest'
    +  ClientHeight = 224
    +  ClientWidth = 400
    +  LCLVersion = '1.1'
       object Label1: TLabel
    +    Left = 8
    +    Height = 15
    +    Top = 8
    +    Width = 218
         Caption = 'Enter hex values separated by spaces here'
    -    Color = clNone
         ParentColor = False
    -    Left = 8
    -    Height = 18
    -    Top = 8
    -    Width = 263
       end
       object Label2: TLabel
    +    Left = 8
    +    Height = 15
    +    Top = 173
    +    Width = 38
         Anchors = [akLeft, akBottom]
         Caption = 'Output'
    -    Color = clNone
         ParentColor = False
    -    Left = 8
    -    Height = 17
    -    Top = 171
    -    Width = 45
       end
       object txtCode: TMemo
    +    Left = 8
    +    Height = 135
    +    Top = 32
    +    Width = 384
         Anchors = [akTop, akLeft, akRight, akBottom]
         Lines.Strings = (
           '90'
    @@ -43,27 +45,23 @@
         )
         ScrollBars = ssVertical
         TabOrder = 0
    -    Left = 8
    -    Height = 135
    -    Top = 32
    -    Width = 384
       end
       object txtOutput: TEdit
    -    Anchors = [akLeft, akRight, akBottom]
    -    ReadOnly = True
    -    TabOrder = 1
         Left = 8
         Height = 23
         Top = 191
         Width = 384
    +    Anchors = [akLeft, akRight, akBottom]
    +    ReadOnly = True
    +    TabOrder = 1
       end
       object chk64Bit: TCheckBox
    +    Left = 304
    +    Height = 19
    +    Top = 9
    +    Width = 49
         Caption = '64 bit'
         TabOrder = 2
    -    Left = 304
    -    Height = 17
    -    Top = 9
    -    Width = 55
       end
       object Timer1: TTimer
         Interval = 250
    Index: debugger/fpdebug/test/asmtestunit.pas
    ===================================================================
    --- debugger/fpdebug/test/asmtestunit.pas	(revision 41474)
    +++ debugger/fpdebug/test/asmtestunit.pas	(working copy)
    @@ -6,9 +6,11 @@
     interface
     
     uses
    -  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, windisas,
    -  ExtCtrls, LCLProc, Math;
    +  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
    +  ExtCtrls, LCLProc, Math,
     
    +  DbgDisasX86;
    +
     type
     
       { TForm1 }
    
    fpdbg.patch (16,477 bytes)
  • fpdbg2.patch (15,911 bytes)
    Index: debugger/fpdebug/dbgsymbols.pas
    ===================================================================
    --- debugger/fpdebug/dbgsymbols.pas	(revision 41474)
    +++ debugger/fpdebug/dbgsymbols.pas	(working copy)
    @@ -38,7 +38,7 @@
     interface
     
     uses
    -  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
    +  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf, DbgUtil;
       
     
     procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
    Index: debugger/fpdebug/fpd/fpd.lpi
    ===================================================================
    --- debugger/fpdebug/fpd/fpd.lpi	(revision 0)
    +++ debugger/fpdebug/fpd/fpd.lpi	(working copy)
    @@ -0,0 +1,85 @@
    +<?xml version="1.0"?>
    +<CONFIG>
    +  <ProjectOptions>
    +    <Version Value="9"/>
    +    <PathDelim Value="\"/>
    +    <General>
    +      <Flags>
    +        <MainUnitHasCreateFormStatements Value="False"/>
    +        <MainUnitHasTitleStatement Value="False"/>
    +        <UseDefaultCompilerOptions Value="True"/>
    +      </Flags>
    +      <SessionStorage Value="InProjectDir"/>
    +      <MainUnit Value="0"/>
    +      <Title Value="fpd"/>
    +      <UseAppBundle Value="False"/>
    +      <ResourceType Value="res"/>
    +    </General>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
    +    <VersionInfo>
    +      <StringTable ProductVersion=""/>
    +    </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
    +    <PublishOptions>
    +      <Version Value="2"/>
    +      <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
    +    </PublishOptions>
    +    <RunParams>
    +      <local>
    +        <FormatVersion Value="1"/>
    +      </local>
    +    </RunParams>
    +    <RequiredPackages Count="1">
    +      <Item1>
    +        <PackageName Value="LCLBase"/>
    +      </Item1>
    +    </RequiredPackages>
    +    <Units Count="2">
    +      <Unit0>
    +        <Filename Value="fpd.lpr"/>
    +        <IsPartOfProject Value="True"/>
    +      </Unit0>
    +      <Unit1>
    +        <Filename Value="..\dbgclasses.pp"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgclasses"/>
    +      </Unit1>
    +    </Units>
    +  </ProjectOptions>
    +  <CompilerOptions>
    +    <Version Value="11"/>
    +    <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpd"/>
    +    </Target>
    +    <SearchPaths>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
    +    </SearchPaths>
    +    <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
    +      <CompilerPath Value="$(CompPath)"/>
    +    </Other>
    +  </CompilerOptions>
    +  <Debugging>
    +    <Exceptions Count="3">
    +      <Item1>
    +        <Name Value="EAbort"/>
    +      </Item1>
    +      <Item2>
    +        <Name Value="ECodetoolError"/>
    +      </Item2>
    +      <Item3>
    +        <Name Value="EFOpenError"/>
    +      </Item3>
    +    </Exceptions>
    +  </Debugging>
    +</CONFIG>
    Index: debugger/fpdebug/fpd/fpdcommand.pas
    ===================================================================
    --- debugger/fpdebug/fpd/fpdcommand.pas	(revision 41474)
    +++ debugger/fpdebug/fpd/fpdcommand.pas	(working copy)
    @@ -36,7 +36,7 @@
     interface
     
     uses
    -  SysUtils, Classes, Windows, DbgWinExtra, DbgClasses, LCLProc;
    +  SysUtils, Classes, Windows, LCLProc, DbgWinExtra, DbgClasses;
     
     procedure HandleCommand(ACommand: String);
     
    Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpi
    ===================================================================
    --- debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(revision 41474)
    +++ debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(working copy)
    @@ -1,26 +1,36 @@
     <?xml version="1.0"?>
     <CONFIG>
       <ProjectOptions>
    +    <Version Value="9"/>
         <PathDelim Value="\"/>
    -    <Version Value="7"/>
         <General>
    +      <Flags>
    +        <MainUnitHasCreateFormStatements Value="False"/>
    +        <MainUnitHasTitleStatement Value="False"/>
    +      </Flags>
    +      <SessionStorage Value="InProjectDir"/>
           <MainUnit Value="0"/>
    -      <TargetFileExt Value=".exe"/>
    -      <ActiveEditorIndexAtStart Value="3"/>
    +      <Title Value="fpdumpdwarf"/>
    +      <UseAppBundle Value="False"/>
    +      <ResourceType Value="res"/>
         </General>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
         <VersionInfo>
    -      <ProjectVersion Value=""/>
    +      <StringTable ProductVersion=""/>
         </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
         <PublishOptions>
           <Version Value="2"/>
    -      <IgnoreBinaries Value="False"/>
           <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    -      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
         </PublishOptions>
         <RunParams>
           <local>
             <FormatVersion Value="1"/>
    -        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
           </local>
         </RunParams>
         <RequiredPackages Count="1">
    @@ -28,86 +38,33 @@
             <PackageName Value="LCL"/>
           </Item1>
         </RequiredPackages>
    -    <Units Count="4">
    +    <Units Count="2">
           <Unit0>
             <Filename Value="fpdumpdwarf.lpr"/>
             <IsPartOfProject Value="True"/>
    -        <CursorPos X="45" Y="12"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="0"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
           </Unit0>
           <Unit1>
    -        <Filename Value="..\dbgclasses.pp"/>
    -        <UnitName Value="DbgClasses"/>
    -        <CursorPos X="22" Y="4"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="1"/>
    -        <UsageCount Value="10"/>
    -        <Loaded Value="True"/>
    +        <Filename Value="..\dbgdwarf.pas"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgdwarf"/>
           </Unit1>
    -      <Unit2>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <UnitName Value="DbgDwarf"/>
    -        <CursorPos X="12" Y="1621"/>
    -        <TopLine Value="1601"/>
    -        <EditorIndex Value="2"/>
    -        <UsageCount Value="10"/>
    -        <Loaded Value="True"/>
    -      </Unit2>
    -      <Unit3>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <UnitName Value="DbgSymbols"/>
    -        <CursorPos X="102" Y="49"/>
    -        <TopLine Value="23"/>
    -        <EditorIndex Value="3"/>
    -        <UsageCount Value="10"/>
    -        <Bookmarks Count="1">
    -          <Item0 X="35" Y="109" ID="1"/>
    -        </Bookmarks>
    -        <Loaded Value="True"/>
    -      </Unit3>
         </Units>
    -    <JumpHistory Count="7" HistoryIndex="6">
    -      <Position1>
    -        <Filename Value="..\dbgclasses.pp"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position1>
    -      <Position2>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position2>
    -      <Position3>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1105" Column="29" TopLine="1096"/>
    -      </Position3>
    -      <Position4>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1122" Column="29" TopLine="1087"/>
    -      </Position4>
    -      <Position5>
    -        <Filename Value="..\dbgdwarf.pas"/>
    -        <Caret Line="1268" Column="35" TopLine="1250"/>
    -      </Position5>
    -      <Position6>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <Caret Line="1" Column="1" TopLine="1"/>
    -      </Position6>
    -      <Position7>
    -        <Filename Value="..\dbgsymbols.pas"/>
    -        <Caret Line="42" Column="3" TopLine="31"/>
    -      </Position7>
    -    </JumpHistory>
       </ProjectOptions>
       <CompilerOptions>
    -    <Version Value="8"/>
    +    <Version Value="11"/>
         <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpdumpdwarf"/>
    +    </Target>
         <SearchPaths>
    -      <IncludeFiles Value="$(ProjOutDir)\"/>
    -      <OtherUnitFiles Value="..\"/>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
         </SearchPaths>
         <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
           <CompilerPath Value="$(CompPath)"/>
         </Other>
       </CompilerOptions>
    Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpr
    ===================================================================
    --- debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(revision 41474)
    +++ debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(working copy)
    @@ -36,8 +36,8 @@
     {$mode objfpc}{$H+}
     
     uses
    -  Classes, Windows, SysUtils, WinDDwarf, WinDPETypes, WinDDwarfConst,
    -  WinDSymbols, WinDLoader, maps;
    +  Classes, Windows, SysUtils, maps,
    +  DbgPETypes, DbgDwarfConst, DbgSymbols, DbgLoader, DbgDwarf;
     
     var
       n, idx: Integer;
    Index: debugger/fpdebug/test/asmtest.lpi
    ===================================================================
    --- debugger/fpdebug/test/asmtest.lpi	(revision 41474)
    +++ debugger/fpdebug/test/asmtest.lpi	(working copy)
    @@ -1,25 +1,33 @@
     <?xml version="1.0"?>
     <CONFIG>
       <ProjectOptions>
    +    <Version Value="9"/>
         <PathDelim Value="\"/>
    -    <Version Value="5"/>
         <General>
    +      <SessionStorage Value="InProjectDir"/>
           <MainUnit Value="0"/>
    -      <IconPath Value="./"/>
    -      <TargetFileExt Value=".exe"/>
    -      <ActiveEditorIndexAtStart Value="0"/>
    +      <Title Value="asmtest"/>
    +      <ResourceType Value="res"/>
    +      <UseXPManifest Value="True"/>
    +      <Icon Value="0"/>
         </General>
    -    <LazDoc Paths=""/>
    +    <i18n>
    +      <EnableI18N LFM="False"/>
    +    </i18n>
    +    <VersionInfo>
    +      <StringTable ProductVersion=""/>
    +    </VersionInfo>
    +    <BuildModes Count="1">
    +      <Item1 Name="Default" Default="True"/>
    +    </BuildModes>
         <PublishOptions>
           <Version Value="2"/>
    -      <IgnoreBinaries Value="False"/>
           <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
    -      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
    +      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
         </PublishOptions>
         <RunParams>
           <local>
             <FormatVersion Value="1"/>
    -        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
           </local>
         </RunParams>
         <RequiredPackages Count="1">
    @@ -27,41 +35,37 @@
             <PackageName Value="LCL"/>
           </Item1>
         </RequiredPackages>
    -    <Units Count="2">
    +    <Units Count="3">
           <Unit0>
             <Filename Value="asmtest.lpr"/>
             <IsPartOfProject Value="True"/>
    -        <UnitName Value="asmtest"/>
    -        <CursorPos X="70" Y="18"/>
    -        <TopLine Value="1"/>
    -        <EditorIndex Value="2"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
           </Unit0>
           <Unit1>
    +        <Filename Value="..\dbgdisasx86.pp"/>
    +        <IsPartOfProject Value="True"/>
    +        <UnitName Value="dbgdisasx86"/>
    +      </Unit1>
    +      <Unit2>
             <Filename Value="asmtestunit.pas"/>
    +        <IsPartOfProject Value="True"/>
             <ComponentName Value="Form1"/>
    -        <IsPartOfProject Value="True"/>
    -        <ResourceFilename Value="asmtestunit.lrs"/>
    +        <HasResources Value="True"/>
    +        <ResourceBaseClass Value="Form"/>
             <UnitName Value="AsmTestUnit"/>
    -        <CursorPos X="34" Y="53"/>
    -        <TopLine Value="43"/>
    -        <EditorIndex Value="0"/>
    -        <UsageCount Value="20"/>
    -        <Loaded Value="True"/>
    -      </Unit1>
    +      </Unit2>
         </Units>
       </ProjectOptions>
       <CompilerOptions>
    -    <Version Value="5"/>
    +    <Version Value="11"/>
         <PathDelim Value="\"/>
    +    <Target>
    +      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\asmtest"/>
    +    </Target>
         <SearchPaths>
    -      <OtherUnitFiles Value="..\"/>
    -      <SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
    +      <IncludeFiles Value="$(ProjOutDir)"/>
    +      <OtherUnitFiles Value=".."/>
    +      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
         </SearchPaths>
    -    <CodeGeneration>
    -      <Generate Value="Faster"/>
    -    </CodeGeneration>
         <Linking>
           <Options>
             <Win32>
    @@ -70,8 +74,23 @@
           </Options>
         </Linking>
         <Other>
    +      <CompilerMessages>
    +        <MsgFileName Value=""/>
    +      </CompilerMessages>
           <CompilerPath Value="$(CompPath)"/>
         </Other>
    -    <CompileReasons Run="False"/>
       </CompilerOptions>
    +  <Debugging>
    +    <Exceptions Count="3">
    +      <Item1>
    +        <Name Value="EAbort"/>
    +      </Item1>
    +      <Item2>
    +        <Name Value="ECodetoolError"/>
    +      </Item2>
    +      <Item3>
    +        <Name Value="EFOpenError"/>
    +      </Item3>
    +    </Exceptions>
    +  </Debugging>
     </CONFIG>
    Index: debugger/fpdebug/test/asmtest.lpr
    ===================================================================
    --- debugger/fpdebug/test/asmtest.lpr	(revision 41474)
    +++ debugger/fpdebug/test/asmtest.lpr	(working copy)
    @@ -7,8 +7,9 @@
       cthreads,
       {$ENDIF}{$ENDIF}
       Interfaces, // this includes the LCL widgetset
    -  Forms
    -  { add your units here }, AsmTestUnit;
    +  Forms,
    +  AsmTestUnit,
    +  dbgdisasx86;
     
     begin
       Application.Initialize;
    Index: debugger/fpdebug/test/asmtestunit.lfm
    ===================================================================
    --- debugger/fpdebug/test/asmtestunit.lfm	(revision 41474)
    +++ debugger/fpdebug/test/asmtestunit.lfm	(working copy)
    @@ -1,34 +1,36 @@
     object Form1: TForm1
    -  Caption = 'AsmTest'
    -  ClientHeight = 224
    -  ClientWidth = 400
    -  PixelsPerInch = 120
    -  HorzScrollBar.Page = 399
    -  VertScrollBar.Page = 223
       Left = 435
       Height = 224
       Top = 232
       Width = 400
    +  HorzScrollBar.Page = 399
    +  VertScrollBar.Page = 223
    +  Caption = 'AsmTest'
    +  ClientHeight = 224
    +  ClientWidth = 400
    +  LCLVersion = '1.1'
       object Label1: TLabel
    +    Left = 8
    +    Height = 15
    +    Top = 8
    +    Width = 218
         Caption = 'Enter hex values separated by spaces here'
    -    Color = clNone
         ParentColor = False
    -    Left = 8
    -    Height = 18
    -    Top = 8
    -    Width = 263
       end
       object Label2: TLabel
    +    Left = 8
    +    Height = 15
    +    Top = 173
    +    Width = 38
         Anchors = [akLeft, akBottom]
         Caption = 'Output'
    -    Color = clNone
         ParentColor = False
    -    Left = 8
    -    Height = 17
    -    Top = 171
    -    Width = 45
       end
       object txtCode: TMemo
    +    Left = 8
    +    Height = 135
    +    Top = 32
    +    Width = 384
         Anchors = [akTop, akLeft, akRight, akBottom]
         Lines.Strings = (
           '90'
    @@ -43,27 +45,23 @@
         )
         ScrollBars = ssVertical
         TabOrder = 0
    -    Left = 8
    -    Height = 135
    -    Top = 32
    -    Width = 384
       end
       object txtOutput: TEdit
    -    Anchors = [akLeft, akRight, akBottom]
    -    ReadOnly = True
    -    TabOrder = 1
         Left = 8
         Height = 23
         Top = 191
         Width = 384
    +    Anchors = [akLeft, akRight, akBottom]
    +    ReadOnly = True
    +    TabOrder = 1
       end
       object chk64Bit: TCheckBox
    +    Left = 304
    +    Height = 19
    +    Top = 9
    +    Width = 49
         Caption = '64 bit'
         TabOrder = 2
    -    Left = 304
    -    Height = 17
    -    Top = 9
    -    Width = 55
       end
       object Timer1: TTimer
         Interval = 250
    Index: debugger/fpdebug/test/asmtestunit.pas
    ===================================================================
    --- debugger/fpdebug/test/asmtestunit.pas	(revision 41474)
    +++ debugger/fpdebug/test/asmtestunit.pas	(working copy)
    @@ -6,9 +6,11 @@
     interface
     
     uses
    -  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, windisas,
    -  ExtCtrls, LCLProc, Math;
    +  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
    +  ExtCtrls, LCLProc, Math,
     
    +  DbgDisasX86;
    +
     type
     
       { TForm1 }
    
    fpdbg2.patch (15,911 bytes)
  • fpd.lpi (2,327 bytes)

Relationships

related to 0024675 closedMartin Friebe No HexValue declaration in dbgsymbols.pas 

Activities

Denis Volodarsky

2013-05-31 13:03

reporter  

fpdbg.patch (16,477 bytes)
Index: debugger/fpdebug/dbgsymbols.pas
===================================================================
--- debugger/fpdebug/dbgsymbols.pas	(revision 41474)
+++ debugger/fpdebug/dbgsymbols.pas	(working copy)
@@ -38,13 +38,33 @@
 interface
 
 uses
-  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
+  Windows, Classes, SysUtils,
+  DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
   
 
 procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
 
 implementation
 
+{$region 'Compatibility Functions'}
+function HexValue(AValue: QWord; ADigits: integer; const AArgs: array of const): string;
+begin
+  Result := '$' + IntToHex(AValue, ADigits);
+end;
+
+procedure Log(const AText: string); inline;
+begin
+  if IsConsole then
+    WriteLn(AText);
+end;
+
+procedure Log(const AFormat: string; const AArgs: array of const); overload;
+begin
+  Log(Format(AFormat, AArgs));
+end;
+
+{$endregion 'Compatibility Functions'}
+
 procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
 var
   ModulePtr: Pointer;
Index: debugger/fpdebug/fpd/fpd.lpi
===================================================================
--- debugger/fpdebug/fpd/fpd.lpi	(revision 0)
+++ debugger/fpdebug/fpd/fpd.lpi	(working copy)
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<CONFIG>
+  <ProjectOptions>
+    <Version Value="9"/>
+    <PathDelim Value="\"/>
+    <General>
+      <Flags>
+        <MainUnitHasCreateFormStatements Value="False"/>
+        <MainUnitHasTitleStatement Value="False"/>
+        <UseDefaultCompilerOptions Value="True"/>
+      </Flags>
+      <SessionStorage Value="InProjectDir"/>
+      <MainUnit Value="0"/>
+      <Title Value="fpd"/>
+      <UseAppBundle Value="False"/>
+      <ResourceType Value="res"/>
+    </General>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
+    <VersionInfo>
+      <StringTable ProductVersion=""/>
+    </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
+    <PublishOptions>
+      <Version Value="2"/>
+      <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
+    </PublishOptions>
+    <RunParams>
+      <local>
+        <FormatVersion Value="1"/>
+      </local>
+    </RunParams>
+    <RequiredPackages Count="1">
+      <Item1>
+        <PackageName Value="LCLBase"/>
+      </Item1>
+    </RequiredPackages>
+    <Units Count="2">
+      <Unit0>
+        <Filename Value="fpd.lpr"/>
+        <IsPartOfProject Value="True"/>
+      </Unit0>
+      <Unit1>
+        <Filename Value="..\dbgclasses.pp"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgclasses"/>
+      </Unit1>
+    </Units>
+  </ProjectOptions>
+  <CompilerOptions>
+    <Version Value="11"/>
+    <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpd"/>
+    </Target>
+    <SearchPaths>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
+    </SearchPaths>
+    <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
+      <CompilerPath Value="$(CompPath)"/>
+    </Other>
+  </CompilerOptions>
+  <Debugging>
+    <Exceptions Count="3">
+      <Item1>
+        <Name Value="EAbort"/>
+      </Item1>
+      <Item2>
+        <Name Value="ECodetoolError"/>
+      </Item2>
+      <Item3>
+        <Name Value="EFOpenError"/>
+      </Item3>
+    </Exceptions>
+  </Debugging>
+</CONFIG>
Index: debugger/fpdebug/fpd/fpdcommand.pas
===================================================================
--- debugger/fpdebug/fpd/fpdcommand.pas	(revision 41474)
+++ debugger/fpdebug/fpd/fpdcommand.pas	(working copy)
@@ -36,7 +36,8 @@
 interface
 
 uses
-  SysUtils, Classes, Windows, DbgWinExtra, DbgClasses, LCLProc;
+  SysUtils, Classes, Windows, LCLProc,
+  DbgWinExtra, DbgClasses;
 
 procedure HandleCommand(ACommand: String);
 
Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpi
===================================================================
--- debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(revision 41474)
+++ debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(working copy)
@@ -1,26 +1,36 @@
 <?xml version="1.0"?>
 <CONFIG>
   <ProjectOptions>
+    <Version Value="9"/>
     <PathDelim Value="\"/>
-    <Version Value="7"/>
     <General>
+      <Flags>
+        <MainUnitHasCreateFormStatements Value="False"/>
+        <MainUnitHasTitleStatement Value="False"/>
+      </Flags>
+      <SessionStorage Value="InProjectDir"/>
       <MainUnit Value="0"/>
-      <TargetFileExt Value=".exe"/>
-      <ActiveEditorIndexAtStart Value="3"/>
+      <Title Value="fpdumpdwarf"/>
+      <UseAppBundle Value="False"/>
+      <ResourceType Value="res"/>
     </General>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
     <VersionInfo>
-      <ProjectVersion Value=""/>
+      <StringTable ProductVersion=""/>
     </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
-      <IgnoreBinaries Value="False"/>
       <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
-      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
     </PublishOptions>
     <RunParams>
       <local>
         <FormatVersion Value="1"/>
-        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
       </local>
     </RunParams>
     <RequiredPackages Count="1">
@@ -28,86 +38,33 @@
         <PackageName Value="LCL"/>
       </Item1>
     </RequiredPackages>
-    <Units Count="4">
+    <Units Count="2">
       <Unit0>
         <Filename Value="fpdumpdwarf.lpr"/>
         <IsPartOfProject Value="True"/>
-        <CursorPos X="45" Y="12"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="0"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
       </Unit0>
       <Unit1>
-        <Filename Value="..\dbgclasses.pp"/>
-        <UnitName Value="DbgClasses"/>
-        <CursorPos X="22" Y="4"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="1"/>
-        <UsageCount Value="10"/>
-        <Loaded Value="True"/>
+        <Filename Value="..\dbgdwarf.pas"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgdwarf"/>
       </Unit1>
-      <Unit2>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <UnitName Value="DbgDwarf"/>
-        <CursorPos X="12" Y="1621"/>
-        <TopLine Value="1601"/>
-        <EditorIndex Value="2"/>
-        <UsageCount Value="10"/>
-        <Loaded Value="True"/>
-      </Unit2>
-      <Unit3>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <UnitName Value="DbgSymbols"/>
-        <CursorPos X="102" Y="49"/>
-        <TopLine Value="23"/>
-        <EditorIndex Value="3"/>
-        <UsageCount Value="10"/>
-        <Bookmarks Count="1">
-          <Item0 X="35" Y="109" ID="1"/>
-        </Bookmarks>
-        <Loaded Value="True"/>
-      </Unit3>
     </Units>
-    <JumpHistory Count="7" HistoryIndex="6">
-      <Position1>
-        <Filename Value="..\dbgclasses.pp"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position1>
-      <Position2>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position2>
-      <Position3>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1105" Column="29" TopLine="1096"/>
-      </Position3>
-      <Position4>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1122" Column="29" TopLine="1087"/>
-      </Position4>
-      <Position5>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1268" Column="35" TopLine="1250"/>
-      </Position5>
-      <Position6>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position6>
-      <Position7>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <Caret Line="42" Column="3" TopLine="31"/>
-      </Position7>
-    </JumpHistory>
   </ProjectOptions>
   <CompilerOptions>
-    <Version Value="8"/>
+    <Version Value="11"/>
     <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpdumpdwarf"/>
+    </Target>
     <SearchPaths>
-      <IncludeFiles Value="$(ProjOutDir)\"/>
-      <OtherUnitFiles Value="..\"/>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
     <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
       <CompilerPath Value="$(CompPath)"/>
     </Other>
   </CompilerOptions>
Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpr
===================================================================
--- debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(revision 41474)
+++ debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(working copy)
@@ -36,8 +36,8 @@
 {$mode objfpc}{$H+}
 
 uses
-  Classes, Windows, SysUtils, WinDDwarf, WinDPETypes, WinDDwarfConst,
-  WinDSymbols, WinDLoader, maps;
+  Classes, Windows, SysUtils, maps,
+  DbgPETypes, DbgDwarfConst, DbgSymbols, DbgLoader, DbgDwarf;
 
 var
   n, idx: Integer;
Index: debugger/fpdebug/test/asmtest.lpi
===================================================================
--- debugger/fpdebug/test/asmtest.lpi	(revision 41474)
+++ debugger/fpdebug/test/asmtest.lpi	(working copy)
@@ -1,25 +1,33 @@
 <?xml version="1.0"?>
 <CONFIG>
   <ProjectOptions>
+    <Version Value="9"/>
     <PathDelim Value="\"/>
-    <Version Value="5"/>
     <General>
+      <SessionStorage Value="InProjectDir"/>
       <MainUnit Value="0"/>
-      <IconPath Value="./"/>
-      <TargetFileExt Value=".exe"/>
-      <ActiveEditorIndexAtStart Value="0"/>
+      <Title Value="asmtest"/>
+      <ResourceType Value="res"/>
+      <UseXPManifest Value="True"/>
+      <Icon Value="0"/>
     </General>
-    <LazDoc Paths=""/>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
+    <VersionInfo>
+      <StringTable ProductVersion=""/>
+    </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
-      <IgnoreBinaries Value="False"/>
       <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
-      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
     </PublishOptions>
     <RunParams>
       <local>
         <FormatVersion Value="1"/>
-        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
       </local>
     </RunParams>
     <RequiredPackages Count="1">
@@ -27,41 +35,37 @@
         <PackageName Value="LCL"/>
       </Item1>
     </RequiredPackages>
-    <Units Count="2">
+    <Units Count="3">
       <Unit0>
         <Filename Value="asmtest.lpr"/>
         <IsPartOfProject Value="True"/>
-        <UnitName Value="asmtest"/>
-        <CursorPos X="70" Y="18"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="2"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
       </Unit0>
       <Unit1>
+        <Filename Value="..\dbgdisasx86.pp"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgdisasx86"/>
+      </Unit1>
+      <Unit2>
         <Filename Value="asmtestunit.pas"/>
+        <IsPartOfProject Value="True"/>
         <ComponentName Value="Form1"/>
-        <IsPartOfProject Value="True"/>
-        <ResourceFilename Value="asmtestunit.lrs"/>
+        <HasResources Value="True"/>
+        <ResourceBaseClass Value="Form"/>
         <UnitName Value="AsmTestUnit"/>
-        <CursorPos X="34" Y="53"/>
-        <TopLine Value="43"/>
-        <EditorIndex Value="0"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
-      </Unit1>
+      </Unit2>
     </Units>
   </ProjectOptions>
   <CompilerOptions>
-    <Version Value="5"/>
+    <Version Value="11"/>
     <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\asmtest"/>
+    </Target>
     <SearchPaths>
-      <OtherUnitFiles Value="..\"/>
-      <SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
-    <CodeGeneration>
-      <Generate Value="Faster"/>
-    </CodeGeneration>
     <Linking>
       <Options>
         <Win32>
@@ -70,8 +74,23 @@
       </Options>
     </Linking>
     <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
       <CompilerPath Value="$(CompPath)"/>
     </Other>
-    <CompileReasons Run="False"/>
   </CompilerOptions>
+  <Debugging>
+    <Exceptions Count="3">
+      <Item1>
+        <Name Value="EAbort"/>
+      </Item1>
+      <Item2>
+        <Name Value="ECodetoolError"/>
+      </Item2>
+      <Item3>
+        <Name Value="EFOpenError"/>
+      </Item3>
+    </Exceptions>
+  </Debugging>
 </CONFIG>
Index: debugger/fpdebug/test/asmtest.lpr
===================================================================
--- debugger/fpdebug/test/asmtest.lpr	(revision 41474)
+++ debugger/fpdebug/test/asmtest.lpr	(working copy)
@@ -7,8 +7,9 @@
   cthreads,
   {$ENDIF}{$ENDIF}
   Interfaces, // this includes the LCL widgetset
-  Forms
-  { add your units here }, AsmTestUnit;
+  Forms,
+  AsmTestUnit,
+  dbgdisasx86;
 
 begin
   Application.Initialize;
Index: debugger/fpdebug/test/asmtestunit.lfm
===================================================================
--- debugger/fpdebug/test/asmtestunit.lfm	(revision 41474)
+++ debugger/fpdebug/test/asmtestunit.lfm	(working copy)
@@ -1,34 +1,36 @@
 object Form1: TForm1
-  Caption = 'AsmTest'
-  ClientHeight = 224
-  ClientWidth = 400
-  PixelsPerInch = 120
-  HorzScrollBar.Page = 399
-  VertScrollBar.Page = 223
   Left = 435
   Height = 224
   Top = 232
   Width = 400
+  HorzScrollBar.Page = 399
+  VertScrollBar.Page = 223
+  Caption = 'AsmTest'
+  ClientHeight = 224
+  ClientWidth = 400
+  LCLVersion = '1.1'
   object Label1: TLabel
+    Left = 8
+    Height = 15
+    Top = 8
+    Width = 218
     Caption = 'Enter hex values separated by spaces here'
-    Color = clNone
     ParentColor = False
-    Left = 8
-    Height = 18
-    Top = 8
-    Width = 263
   end
   object Label2: TLabel
+    Left = 8
+    Height = 15
+    Top = 173
+    Width = 38
     Anchors = [akLeft, akBottom]
     Caption = 'Output'
-    Color = clNone
     ParentColor = False
-    Left = 8
-    Height = 17
-    Top = 171
-    Width = 45
   end
   object txtCode: TMemo
+    Left = 8
+    Height = 135
+    Top = 32
+    Width = 384
     Anchors = [akTop, akLeft, akRight, akBottom]
     Lines.Strings = (
       '90'
@@ -43,27 +45,23 @@
     )
     ScrollBars = ssVertical
     TabOrder = 0
-    Left = 8
-    Height = 135
-    Top = 32
-    Width = 384
   end
   object txtOutput: TEdit
-    Anchors = [akLeft, akRight, akBottom]
-    ReadOnly = True
-    TabOrder = 1
     Left = 8
     Height = 23
     Top = 191
     Width = 384
+    Anchors = [akLeft, akRight, akBottom]
+    ReadOnly = True
+    TabOrder = 1
   end
   object chk64Bit: TCheckBox
+    Left = 304
+    Height = 19
+    Top = 9
+    Width = 49
     Caption = '64 bit'
     TabOrder = 2
-    Left = 304
-    Height = 17
-    Top = 9
-    Width = 55
   end
   object Timer1: TTimer
     Interval = 250
Index: debugger/fpdebug/test/asmtestunit.pas
===================================================================
--- debugger/fpdebug/test/asmtestunit.pas	(revision 41474)
+++ debugger/fpdebug/test/asmtestunit.pas	(working copy)
@@ -6,9 +6,11 @@
 interface
 
 uses
-  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, windisas,
-  ExtCtrls, LCLProc, Math;
+  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
+  ExtCtrls, LCLProc, Math,
 
+  DbgDisasX86;
+
 type
 
   { TForm1 }
fpdbg.patch (16,477 bytes)

Denis Volodarsky

2013-06-08 10:36

reporter  

fpdbg2.patch (15,911 bytes)
Index: debugger/fpdebug/dbgsymbols.pas
===================================================================
--- debugger/fpdebug/dbgsymbols.pas	(revision 41474)
+++ debugger/fpdebug/dbgsymbols.pas	(working copy)
@@ -38,7 +38,7 @@
 interface
 
 uses
-  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf;
+  Windows, Classes, SysUtils, DbgClasses, DbgWinExtra, DbgPETypes, DbgDwarf, DbgUtil;
   
 
 procedure AddSymbols(AParent: TDbgSymbol; AModule: THandle);
Index: debugger/fpdebug/fpd/fpd.lpi
===================================================================
--- debugger/fpdebug/fpd/fpd.lpi	(revision 0)
+++ debugger/fpdebug/fpd/fpd.lpi	(working copy)
@@ -0,0 +1,85 @@
+<?xml version="1.0"?>
+<CONFIG>
+  <ProjectOptions>
+    <Version Value="9"/>
+    <PathDelim Value="\"/>
+    <General>
+      <Flags>
+        <MainUnitHasCreateFormStatements Value="False"/>
+        <MainUnitHasTitleStatement Value="False"/>
+        <UseDefaultCompilerOptions Value="True"/>
+      </Flags>
+      <SessionStorage Value="InProjectDir"/>
+      <MainUnit Value="0"/>
+      <Title Value="fpd"/>
+      <UseAppBundle Value="False"/>
+      <ResourceType Value="res"/>
+    </General>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
+    <VersionInfo>
+      <StringTable ProductVersion=""/>
+    </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
+    <PublishOptions>
+      <Version Value="2"/>
+      <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
+    </PublishOptions>
+    <RunParams>
+      <local>
+        <FormatVersion Value="1"/>
+      </local>
+    </RunParams>
+    <RequiredPackages Count="1">
+      <Item1>
+        <PackageName Value="LCLBase"/>
+      </Item1>
+    </RequiredPackages>
+    <Units Count="2">
+      <Unit0>
+        <Filename Value="fpd.lpr"/>
+        <IsPartOfProject Value="True"/>
+      </Unit0>
+      <Unit1>
+        <Filename Value="..\dbgclasses.pp"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgclasses"/>
+      </Unit1>
+    </Units>
+  </ProjectOptions>
+  <CompilerOptions>
+    <Version Value="11"/>
+    <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpd"/>
+    </Target>
+    <SearchPaths>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
+    </SearchPaths>
+    <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
+      <CompilerPath Value="$(CompPath)"/>
+    </Other>
+  </CompilerOptions>
+  <Debugging>
+    <Exceptions Count="3">
+      <Item1>
+        <Name Value="EAbort"/>
+      </Item1>
+      <Item2>
+        <Name Value="ECodetoolError"/>
+      </Item2>
+      <Item3>
+        <Name Value="EFOpenError"/>
+      </Item3>
+    </Exceptions>
+  </Debugging>
+</CONFIG>
Index: debugger/fpdebug/fpd/fpdcommand.pas
===================================================================
--- debugger/fpdebug/fpd/fpdcommand.pas	(revision 41474)
+++ debugger/fpdebug/fpd/fpdcommand.pas	(working copy)
@@ -36,7 +36,7 @@
 interface
 
 uses
-  SysUtils, Classes, Windows, DbgWinExtra, DbgClasses, LCLProc;
+  SysUtils, Classes, Windows, LCLProc, DbgWinExtra, DbgClasses;
 
 procedure HandleCommand(ACommand: String);
 
Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpi
===================================================================
--- debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(revision 41474)
+++ debugger/fpdebug/fpdd/fpdumpdwarf.lpi	(working copy)
@@ -1,26 +1,36 @@
 <?xml version="1.0"?>
 <CONFIG>
   <ProjectOptions>
+    <Version Value="9"/>
     <PathDelim Value="\"/>
-    <Version Value="7"/>
     <General>
+      <Flags>
+        <MainUnitHasCreateFormStatements Value="False"/>
+        <MainUnitHasTitleStatement Value="False"/>
+      </Flags>
+      <SessionStorage Value="InProjectDir"/>
       <MainUnit Value="0"/>
-      <TargetFileExt Value=".exe"/>
-      <ActiveEditorIndexAtStart Value="3"/>
+      <Title Value="fpdumpdwarf"/>
+      <UseAppBundle Value="False"/>
+      <ResourceType Value="res"/>
     </General>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
     <VersionInfo>
-      <ProjectVersion Value=""/>
+      <StringTable ProductVersion=""/>
     </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
-      <IgnoreBinaries Value="False"/>
       <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
-      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
     </PublishOptions>
     <RunParams>
       <local>
         <FormatVersion Value="1"/>
-        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
       </local>
     </RunParams>
     <RequiredPackages Count="1">
@@ -28,86 +38,33 @@
         <PackageName Value="LCL"/>
       </Item1>
     </RequiredPackages>
-    <Units Count="4">
+    <Units Count="2">
       <Unit0>
         <Filename Value="fpdumpdwarf.lpr"/>
         <IsPartOfProject Value="True"/>
-        <CursorPos X="45" Y="12"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="0"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
       </Unit0>
       <Unit1>
-        <Filename Value="..\dbgclasses.pp"/>
-        <UnitName Value="DbgClasses"/>
-        <CursorPos X="22" Y="4"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="1"/>
-        <UsageCount Value="10"/>
-        <Loaded Value="True"/>
+        <Filename Value="..\dbgdwarf.pas"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgdwarf"/>
       </Unit1>
-      <Unit2>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <UnitName Value="DbgDwarf"/>
-        <CursorPos X="12" Y="1621"/>
-        <TopLine Value="1601"/>
-        <EditorIndex Value="2"/>
-        <UsageCount Value="10"/>
-        <Loaded Value="True"/>
-      </Unit2>
-      <Unit3>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <UnitName Value="DbgSymbols"/>
-        <CursorPos X="102" Y="49"/>
-        <TopLine Value="23"/>
-        <EditorIndex Value="3"/>
-        <UsageCount Value="10"/>
-        <Bookmarks Count="1">
-          <Item0 X="35" Y="109" ID="1"/>
-        </Bookmarks>
-        <Loaded Value="True"/>
-      </Unit3>
     </Units>
-    <JumpHistory Count="7" HistoryIndex="6">
-      <Position1>
-        <Filename Value="..\dbgclasses.pp"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position1>
-      <Position2>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position2>
-      <Position3>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1105" Column="29" TopLine="1096"/>
-      </Position3>
-      <Position4>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1122" Column="29" TopLine="1087"/>
-      </Position4>
-      <Position5>
-        <Filename Value="..\dbgdwarf.pas"/>
-        <Caret Line="1268" Column="35" TopLine="1250"/>
-      </Position5>
-      <Position6>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <Caret Line="1" Column="1" TopLine="1"/>
-      </Position6>
-      <Position7>
-        <Filename Value="..\dbgsymbols.pas"/>
-        <Caret Line="42" Column="3" TopLine="31"/>
-      </Position7>
-    </JumpHistory>
   </ProjectOptions>
   <CompilerOptions>
-    <Version Value="8"/>
+    <Version Value="11"/>
     <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\fpdumpdwarf"/>
+    </Target>
     <SearchPaths>
-      <IncludeFiles Value="$(ProjOutDir)\"/>
-      <OtherUnitFiles Value="..\"/>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
     <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
       <CompilerPath Value="$(CompPath)"/>
     </Other>
   </CompilerOptions>
Index: debugger/fpdebug/fpdd/fpdumpdwarf.lpr
===================================================================
--- debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(revision 41474)
+++ debugger/fpdebug/fpdd/fpdumpdwarf.lpr	(working copy)
@@ -36,8 +36,8 @@
 {$mode objfpc}{$H+}
 
 uses
-  Classes, Windows, SysUtils, WinDDwarf, WinDPETypes, WinDDwarfConst,
-  WinDSymbols, WinDLoader, maps;
+  Classes, Windows, SysUtils, maps,
+  DbgPETypes, DbgDwarfConst, DbgSymbols, DbgLoader, DbgDwarf;
 
 var
   n, idx: Integer;
Index: debugger/fpdebug/test/asmtest.lpi
===================================================================
--- debugger/fpdebug/test/asmtest.lpi	(revision 41474)
+++ debugger/fpdebug/test/asmtest.lpi	(working copy)
@@ -1,25 +1,33 @@
 <?xml version="1.0"?>
 <CONFIG>
   <ProjectOptions>
+    <Version Value="9"/>
     <PathDelim Value="\"/>
-    <Version Value="5"/>
     <General>
+      <SessionStorage Value="InProjectDir"/>
       <MainUnit Value="0"/>
-      <IconPath Value="./"/>
-      <TargetFileExt Value=".exe"/>
-      <ActiveEditorIndexAtStart Value="0"/>
+      <Title Value="asmtest"/>
+      <ResourceType Value="res"/>
+      <UseXPManifest Value="True"/>
+      <Icon Value="0"/>
     </General>
-    <LazDoc Paths=""/>
+    <i18n>
+      <EnableI18N LFM="False"/>
+    </i18n>
+    <VersionInfo>
+      <StringTable ProductVersion=""/>
+    </VersionInfo>
+    <BuildModes Count="1">
+      <Item1 Name="Default" Default="True"/>
+    </BuildModes>
     <PublishOptions>
       <Version Value="2"/>
-      <IgnoreBinaries Value="False"/>
       <IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
-      <ExcludeFileFilter Value="*.(bak|ppu|ppw|o|so);*~;backup"/>
+      <ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
     </PublishOptions>
     <RunParams>
       <local>
         <FormatVersion Value="1"/>
-        <LaunchingApplication PathPlusParams="/usr/X11R6/bin/xterm -T 'Lazarus Run Output' -e $(LazarusDir)/tools/runwait.sh $(TargetCmdLine)"/>
       </local>
     </RunParams>
     <RequiredPackages Count="1">
@@ -27,41 +35,37 @@
         <PackageName Value="LCL"/>
       </Item1>
     </RequiredPackages>
-    <Units Count="2">
+    <Units Count="3">
       <Unit0>
         <Filename Value="asmtest.lpr"/>
         <IsPartOfProject Value="True"/>
-        <UnitName Value="asmtest"/>
-        <CursorPos X="70" Y="18"/>
-        <TopLine Value="1"/>
-        <EditorIndex Value="2"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
       </Unit0>
       <Unit1>
+        <Filename Value="..\dbgdisasx86.pp"/>
+        <IsPartOfProject Value="True"/>
+        <UnitName Value="dbgdisasx86"/>
+      </Unit1>
+      <Unit2>
         <Filename Value="asmtestunit.pas"/>
+        <IsPartOfProject Value="True"/>
         <ComponentName Value="Form1"/>
-        <IsPartOfProject Value="True"/>
-        <ResourceFilename Value="asmtestunit.lrs"/>
+        <HasResources Value="True"/>
+        <ResourceBaseClass Value="Form"/>
         <UnitName Value="AsmTestUnit"/>
-        <CursorPos X="34" Y="53"/>
-        <TopLine Value="43"/>
-        <EditorIndex Value="0"/>
-        <UsageCount Value="20"/>
-        <Loaded Value="True"/>
-      </Unit1>
+      </Unit2>
     </Units>
   </ProjectOptions>
   <CompilerOptions>
-    <Version Value="5"/>
+    <Version Value="11"/>
     <PathDelim Value="\"/>
+    <Target>
+      <Filename Value="bin\$(TargetCPU)-$(TargetOS)\asmtest"/>
+    </Target>
     <SearchPaths>
-      <OtherUnitFiles Value="..\"/>
-      <SrcPath Value="$(LazarusDir)\lcl\;$(LazarusDir)\lcl\interfaces\$(LCLWidgetType)\"/>
+      <IncludeFiles Value="$(ProjOutDir)"/>
+      <OtherUnitFiles Value=".."/>
+      <UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
     </SearchPaths>
-    <CodeGeneration>
-      <Generate Value="Faster"/>
-    </CodeGeneration>
     <Linking>
       <Options>
         <Win32>
@@ -70,8 +74,23 @@
       </Options>
     </Linking>
     <Other>
+      <CompilerMessages>
+        <MsgFileName Value=""/>
+      </CompilerMessages>
       <CompilerPath Value="$(CompPath)"/>
     </Other>
-    <CompileReasons Run="False"/>
   </CompilerOptions>
+  <Debugging>
+    <Exceptions Count="3">
+      <Item1>
+        <Name Value="EAbort"/>
+      </Item1>
+      <Item2>
+        <Name Value="ECodetoolError"/>
+      </Item2>
+      <Item3>
+        <Name Value="EFOpenError"/>
+      </Item3>
+    </Exceptions>
+  </Debugging>
 </CONFIG>
Index: debugger/fpdebug/test/asmtest.lpr
===================================================================
--- debugger/fpdebug/test/asmtest.lpr	(revision 41474)
+++ debugger/fpdebug/test/asmtest.lpr	(working copy)
@@ -7,8 +7,9 @@
   cthreads,
   {$ENDIF}{$ENDIF}
   Interfaces, // this includes the LCL widgetset
-  Forms
-  { add your units here }, AsmTestUnit;
+  Forms,
+  AsmTestUnit,
+  dbgdisasx86;
 
 begin
   Application.Initialize;
Index: debugger/fpdebug/test/asmtestunit.lfm
===================================================================
--- debugger/fpdebug/test/asmtestunit.lfm	(revision 41474)
+++ debugger/fpdebug/test/asmtestunit.lfm	(working copy)
@@ -1,34 +1,36 @@
 object Form1: TForm1
-  Caption = 'AsmTest'
-  ClientHeight = 224
-  ClientWidth = 400
-  PixelsPerInch = 120
-  HorzScrollBar.Page = 399
-  VertScrollBar.Page = 223
   Left = 435
   Height = 224
   Top = 232
   Width = 400
+  HorzScrollBar.Page = 399
+  VertScrollBar.Page = 223
+  Caption = 'AsmTest'
+  ClientHeight = 224
+  ClientWidth = 400
+  LCLVersion = '1.1'
   object Label1: TLabel
+    Left = 8
+    Height = 15
+    Top = 8
+    Width = 218
     Caption = 'Enter hex values separated by spaces here'
-    Color = clNone
     ParentColor = False
-    Left = 8
-    Height = 18
-    Top = 8
-    Width = 263
   end
   object Label2: TLabel
+    Left = 8
+    Height = 15
+    Top = 173
+    Width = 38
     Anchors = [akLeft, akBottom]
     Caption = 'Output'
-    Color = clNone
     ParentColor = False
-    Left = 8
-    Height = 17
-    Top = 171
-    Width = 45
   end
   object txtCode: TMemo
+    Left = 8
+    Height = 135
+    Top = 32
+    Width = 384
     Anchors = [akTop, akLeft, akRight, akBottom]
     Lines.Strings = (
       '90'
@@ -43,27 +45,23 @@
     )
     ScrollBars = ssVertical
     TabOrder = 0
-    Left = 8
-    Height = 135
-    Top = 32
-    Width = 384
   end
   object txtOutput: TEdit
-    Anchors = [akLeft, akRight, akBottom]
-    ReadOnly = True
-    TabOrder = 1
     Left = 8
     Height = 23
     Top = 191
     Width = 384
+    Anchors = [akLeft, akRight, akBottom]
+    ReadOnly = True
+    TabOrder = 1
   end
   object chk64Bit: TCheckBox
+    Left = 304
+    Height = 19
+    Top = 9
+    Width = 49
     Caption = '64 bit'
     TabOrder = 2
-    Left = 304
-    Height = 17
-    Top = 9
-    Width = 55
   end
   object Timer1: TTimer
     Interval = 250
Index: debugger/fpdebug/test/asmtestunit.pas
===================================================================
--- debugger/fpdebug/test/asmtestunit.pas	(revision 41474)
+++ debugger/fpdebug/test/asmtestunit.pas	(working copy)
@@ -6,9 +6,11 @@
 interface
 
 uses
-  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls, windisas,
-  ExtCtrls, LCLProc, Math;
+  Classes, SysUtils, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls,
+  ExtCtrls, LCLProc, Math,
 
+  DbgDisasX86;
+
 type
 
   { TForm1 }
fpdbg2.patch (15,911 bytes)

Denis Volodarsky

2013-06-08 10:37

reporter   ~0068120

Last edited: 2013-06-08 10:38

View 2 revisions

I've made a mistake. There's no need for any helper functions, the only changes needed are modifying unit names to be prefixed Dbg

I guess I changed it in fpdbg2.patch

Martin Friebe

2013-06-15 00:10

manager   ~0068309

Please attach fpd.lpi as separate file.

tortoise patch does not work well.

Denis Volodarsky

2013-06-27 13:44

reporter  

fpd.lpi (2,327 bytes)

Martin Friebe

2013-06-27 16:53

manager   ~0068603

Thank you.

I have applied the changes.

Denis Volodarsky

2013-06-27 17:21

reporter   ~0068606

Thanks

Issue History

Date Modified Username Field Change
2013-05-31 13:03 Denis Volodarsky New Issue
2013-05-31 13:03 Denis Volodarsky File Added: fpdbg.patch
2013-05-31 13:05 Denis Volodarsky Tag Attached: fpdebug
2013-06-04 10:18 Martin Friebe Assigned To => Martin Friebe
2013-06-04 10:18 Martin Friebe Status new => assigned
2013-06-08 10:36 Denis Volodarsky File Added: fpdbg2.patch
2013-06-08 10:37 Denis Volodarsky Note Added: 0068120
2013-06-08 10:38 Denis Volodarsky Note Edited: 0068120 View Revisions
2013-06-15 00:10 Martin Friebe Note Added: 0068309
2013-06-27 13:44 Denis Volodarsky File Added: fpd.lpi
2013-06-27 15:41 Martin Friebe Relationship added related to 0024675
2013-06-27 16:53 Martin Friebe Fixed in Revision => 41921
2013-06-27 16:53 Martin Friebe LazTarget => 1.2
2013-06-27 16:53 Martin Friebe Note Added: 0068603
2013-06-27 16:53 Martin Friebe Status assigned => resolved
2013-06-27 16:53 Martin Friebe Fixed in Version => 1.1 (SVN)
2013-06-27 16:53 Martin Friebe Resolution open => fixed
2013-06-27 16:53 Martin Friebe Target Version => 1.2.0
2013-06-27 17:21 Denis Volodarsky Note Added: 0068606
2013-06-27 17:21 Denis Volodarsky Status resolved => closed