mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-14 14:29:14 +02:00
+ Assembler tab in Options|Compiler
This commit is contained in:
parent
08e39cb92a
commit
8bea921be5
@ -55,21 +55,23 @@ begin
|
|||||||
if Desktop^.ExecView(D)=cmOK then
|
if Desktop^.ExecView(D)=cmOK then
|
||||||
SwitchesMode:=TSwitchMode(RB^.Value);
|
SwitchesMode:=TSwitchMode(RB^.Value);
|
||||||
Dispose(D, Done);
|
Dispose(D, Done);
|
||||||
|
UpdateMode;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TIDEApp.DoCompilerSwitch;
|
procedure TIDEApp.DoCompilerSwitch;
|
||||||
var R,R2,TabR,TabIR: TRect;
|
var R,R2,TabR,TabIR: TRect;
|
||||||
D: PCenterDialog;
|
D: PCenterDialog;
|
||||||
CB1,CB2,CB3,CB4: PCheckBoxes;
|
CB1,CB2,CB3,CB4,CB5: PCheckBoxes;
|
||||||
RB1,RB2,RB3,RB4: PRadioButtons;
|
RB1,{RB2,}RB3,RB4,RB5,RB6: PRadioButtons;
|
||||||
Items: PSItem;
|
Items: PSItem;
|
||||||
IL: PInputLine;
|
IL: PInputLine;
|
||||||
Count : integer;
|
Count : integer;
|
||||||
I,L: longint;
|
I,L: longint;
|
||||||
Tab: PTab;
|
Tab: PTab;
|
||||||
Label11,Label12,
|
Label11,{Label12,}
|
||||||
Label21,Label22,Label23,
|
Label21,Label22,Label23,
|
||||||
Label31,Label41: PLabel;
|
Label31,Label41,
|
||||||
|
Label51,Label52,Label53: PLabel;
|
||||||
begin
|
begin
|
||||||
R.Assign(0,0,72,18);
|
R.Assign(0,0,72,18);
|
||||||
New(D, Init(R, 'Compiler Switches'));
|
New(D, Init(R, 'Compiler Switches'));
|
||||||
@ -100,21 +102,6 @@ begin
|
|||||||
R2.B.Y:=R2.A.Y+1;
|
R2.B.Y:=R2.A.Y+1;
|
||||||
New(Label11, Init(R2, 'Syntax Switches', CB1));
|
New(Label11, Init(R2, 'Syntax Switches', CB1));
|
||||||
|
|
||||||
Count:=AsmReaderSwitches^.ItemCount;
|
|
||||||
R2.Copy(TabIR);
|
|
||||||
R2.A.X:=R2.B.X-(R2.B.X-R2.A.X) div 2;
|
|
||||||
Dec(R2.B.X,4);
|
|
||||||
R2.B.Y:=R2.A.Y+Count;
|
|
||||||
Items:=nil;
|
|
||||||
for I:=Count-1 downto 0 do
|
|
||||||
Items:=NewSItem(AsmReaderSwitches^.ItemName(I), Items);
|
|
||||||
New(RB2, Init(R2, Items));
|
|
||||||
L:=AsmReaderSwitches^.GetCurrSel;
|
|
||||||
RB2^.SetData(L);
|
|
||||||
Dec(R2.A.Y);
|
|
||||||
R2.B.Y:=R2.A.Y+1;
|
|
||||||
New(Label12, Init(R2, 'Assembler format', RB2));
|
|
||||||
|
|
||||||
{ --- Sheet 2 --- }
|
{ --- Sheet 2 --- }
|
||||||
Count:=CodegenSwitches^.ItemCount;
|
Count:=CodegenSwitches^.ItemCount;
|
||||||
R2.Copy(TabIR);
|
R2.Copy(TabIR);
|
||||||
@ -211,14 +198,60 @@ begin
|
|||||||
R2.B.Y:=R2.A.Y+1;
|
R2.B.Y:=R2.A.Y+1;
|
||||||
New(Label41, Init(R2, 'Browser', RB4));
|
New(Label41, Init(R2, 'Browser', RB4));
|
||||||
|
|
||||||
|
{ --- Sheet 5 --- }
|
||||||
|
Count:=AsmReaderSwitches^.ItemCount;
|
||||||
|
R2.Copy(TabIR);
|
||||||
|
R2.B.X:=R2.B.X-(R2.B.X-R2.A.X) div 2;
|
||||||
|
Dec(R2.B.X,4);
|
||||||
|
R2.B.Y:=R2.A.Y+Count;
|
||||||
|
Items:=nil;
|
||||||
|
for I:=Count-1 downto 0 do
|
||||||
|
Items:=NewSItem(AsmReaderSwitches^.ItemName(I), Items);
|
||||||
|
New(RB5, Init(R2, Items));
|
||||||
|
L:=AsmReaderSwitches^.GetCurrSel;
|
||||||
|
RB5^.SetData(L);
|
||||||
|
Dec(R2.A.Y);
|
||||||
|
R2.B.Y:=R2.A.Y+1;
|
||||||
|
New(Label51, Init(R2, 'Assembler reader', RB5));
|
||||||
|
|
||||||
|
R2.Copy(TabIR);
|
||||||
|
R2.B.X:=R2.B.X-(R2.B.X-R2.A.X) div 2;
|
||||||
|
Dec(R2.B.X,4);
|
||||||
|
R2.A.Y:=R2.A.Y+Count+2;
|
||||||
|
Count:=AsmInfoSwitches^.ItemCount;
|
||||||
|
R2.B.Y:=R2.A.Y+Count;
|
||||||
|
Items:=nil;
|
||||||
|
for I:=Count-1 downto 0 do
|
||||||
|
Items:=NewSItem(AsmInfoSwitches^.ItemName(I), Items);
|
||||||
|
New(CB5, Init(R2, Items));
|
||||||
|
for I:=0 to Count-1 do
|
||||||
|
if AsmInfoSwitches^.GetBooleanItem(I) then
|
||||||
|
CB5^.Press(I);
|
||||||
|
Dec(R2.A.Y);
|
||||||
|
R2.B.Y:=R2.A.Y+1;
|
||||||
|
New(Label52, Init(R2, 'Assembler info', CB5));
|
||||||
|
|
||||||
|
Count:=AsmOutputSwitches^.ItemCount;
|
||||||
|
R2.Copy(TabIR);
|
||||||
|
R2.A.X:=R2.B.X-(R2.B.X-R2.A.X) div 2;
|
||||||
|
Dec(R2.B.X,4);
|
||||||
|
R2.B.Y:=R2.A.Y+Count;
|
||||||
|
Items:=nil;
|
||||||
|
for I:=Count-1 downto 0 do
|
||||||
|
Items:=NewSItem(AsmOutputSwitches^.ItemName(I), Items);
|
||||||
|
New(RB6, Init(R2, Items));
|
||||||
|
L:=AsmOutputSwitches^.GetCurrSel;
|
||||||
|
RB6^.SetData(L);
|
||||||
|
Dec(R2.A.Y);
|
||||||
|
R2.B.Y:=R2.A.Y+1;
|
||||||
|
New(Label53, Init(R2, 'Assembler output', RB6));
|
||||||
|
|
||||||
{ create tabs }
|
{ create tabs }
|
||||||
New(Tab, Init(TabR,
|
New(Tab, Init(TabR,
|
||||||
NewTabDef('S~y~ntax',CB1,
|
NewTabDef('S~y~ntax',CB1,
|
||||||
NewTabItem(Label11,
|
NewTabItem(Label11,
|
||||||
NewTabItem(CB1,
|
NewTabItem(CB1,
|
||||||
NewTabItem(Label12,
|
nil)),
|
||||||
NewTabItem(RB2,
|
|
||||||
nil)))),
|
|
||||||
NewTabDef('Code ~g~eneration',CB3,
|
NewTabDef('Code ~g~eneration',CB3,
|
||||||
NewTabItem(Label21,
|
NewTabItem(Label21,
|
||||||
NewTabItem(CB3,
|
NewTabItem(CB3,
|
||||||
@ -236,7 +269,15 @@ begin
|
|||||||
NewTabItem(Label41,
|
NewTabItem(Label41,
|
||||||
NewTabItem(RB4,
|
NewTabItem(RB4,
|
||||||
nil)),
|
nil)),
|
||||||
nil))))));
|
NewTabDef('~A~ssembler',CB1,
|
||||||
|
NewTabItem(Label51,
|
||||||
|
NewTabItem(RB5,
|
||||||
|
NewTabItem(Label52,
|
||||||
|
NewTabItem(CB5,
|
||||||
|
NewTabItem(Label53,
|
||||||
|
NewTabItem(RB6,
|
||||||
|
nil)))))),
|
||||||
|
nil)))))));
|
||||||
Tab^.GrowMode:=0;
|
Tab^.GrowMode:=0;
|
||||||
Insert(Tab);
|
Insert(Tab);
|
||||||
|
|
||||||
@ -261,7 +302,10 @@ begin
|
|||||||
VerboseSwitches^.SetBooleanItem(I,CB4^.Mark(I));
|
VerboseSwitches^.SetBooleanItem(I,CB4^.Mark(I));
|
||||||
OptimizingGoalSwitches^.SetCurrSel(RB3^.Value);
|
OptimizingGoalSwitches^.SetCurrSel(RB3^.Value);
|
||||||
ProcessorSwitches^.SetCurrSel(RB1^.Value);
|
ProcessorSwitches^.SetCurrSel(RB1^.Value);
|
||||||
AsmReaderSwitches^.SetCurrSel(RB2^.Value);
|
AsmReaderSwitches^.SetCurrSel(RB5^.Value);
|
||||||
|
for I:=0 to AsmInfoSwitches^.ItemCount-1 do
|
||||||
|
AsmInfoSwitches^.SetBooleanItem(I,CB5^.Mark(I));
|
||||||
|
AsmOutputSwitches^.SetCurrSel(RB6^.Value);
|
||||||
BrowserSwitches^.SetCurrSel(RB4^.Value);
|
BrowserSwitches^.SetCurrSel(RB4^.Value);
|
||||||
ConditionalSwitches^.SetStringItem(0,IL^.Data^);
|
ConditionalSwitches^.SetStringItem(0,IL^.Data^);
|
||||||
end;
|
end;
|
||||||
@ -1168,7 +1212,10 @@ end;
|
|||||||
|
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.28 2000-02-07 12:02:32 pierre
|
Revision 1.29 2000-03-07 22:52:50 pierre
|
||||||
|
+ Assembler tab in Options|Compiler
|
||||||
|
|
||||||
|
Revision 1.28 2000/02/07 12:02:32 pierre
|
||||||
Gabor's changes
|
Gabor's changes
|
||||||
|
|
||||||
Revision 1.27 1999/11/10 17:18:17 pierre
|
Revision 1.27 1999/11/10 17:18:17 pierre
|
||||||
@ -1325,4 +1372,4 @@ end;
|
|||||||
+ Switches are now written/read
|
+ Switches are now written/read
|
||||||
+ find and replace routines
|
+ find and replace routines
|
||||||
|
|
||||||
}
|
}
|
@ -793,11 +793,11 @@ begin
|
|||||||
New(AsmReaderSwitches,InitSelect('R'));
|
New(AsmReaderSwitches,InitSelect('R'));
|
||||||
with AsmReaderSwitches^ do
|
with AsmReaderSwitches^ do
|
||||||
begin
|
begin
|
||||||
AddSelectItem('Di~r~ect assembler','direct');
|
AddSelectItem('~D~irect assembler','direct');
|
||||||
AddSelectItem('~A~T&T style assembler','att');
|
AddSelectItem('~A~T&T style assembler','att');
|
||||||
AddSelectItem('Int~e~l style assembler','intel');
|
AddSelectItem('~I~ntel style assembler','intel');
|
||||||
end;
|
end;
|
||||||
New(AsmInfoSwitches,InitSelect('a'));
|
New(AsmInfoSwitches,Init('a'));
|
||||||
with AsmInfoSwitches^ do
|
with AsmInfoSwitches^ do
|
||||||
begin
|
begin
|
||||||
AddBooleanItem('~L~ist source','l');
|
AddBooleanItem('~L~ist source','l');
|
||||||
@ -807,8 +807,8 @@ begin
|
|||||||
New(AsmOutputSwitches,InitSelect('A'));
|
New(AsmOutputSwitches,InitSelect('A'));
|
||||||
with AsmOutputSwitches^ do
|
with AsmOutputSwitches^ do
|
||||||
begin
|
begin
|
||||||
AddSelectItem('Use GNU ~a~s','as');
|
AddSelectItem('Use ~G~NU as','as');
|
||||||
AddSelectItem('Use NASM ~c~off','nasmcoff');
|
AddSelectItem('Use ~N~ASM coff','nasmcoff');
|
||||||
AddSelectItem('Use NASM ~e~lf','nasmelf');
|
AddSelectItem('Use NASM ~e~lf','nasmelf');
|
||||||
AddSelectItem('Use NASM ~o~bj','nasmobj');
|
AddSelectItem('Use NASM ~o~bj','nasmobj');
|
||||||
AddSelectItem('Use ~M~ASM','masm');
|
AddSelectItem('Use ~M~ASM','masm');
|
||||||
@ -961,7 +961,10 @@ end;
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.18 2000-03-07 21:17:29 pierre
|
Revision 1.19 2000-03-07 22:52:50 pierre
|
||||||
|
+ Assembler tab in Options|Compiler
|
||||||
|
|
||||||
|
Revision 1.18 2000/03/07 21:17:29 pierre
|
||||||
+ASMInfoSwitches AsmOutputSwitches
|
+ASMInfoSwitches AsmOutputSwitches
|
||||||
|
|
||||||
Revision 1.17 2000/02/04 14:34:47 pierre
|
Revision 1.17 2000/02/04 14:34:47 pierre
|
||||||
|
Loading…
Reference in New Issue
Block a user