Commit 933bcf0

Nick committed on
Start WIP on oscilloscopes
commit 933bcf03ec07fdec4079d7f2f5c19860936a306b parent d808920
2 changed files +87−11
Modifiedtracker.lfm +51−10
@@ -1,7 +1,7 @@
1 object frmTracker: TfrmTracker 1 object frmTracker: TfrmTracker
2 Left = 862 2 Left = 802
3 Height = 1396 3 Height = 1396
4 Top = 197 4 Top = 180
5 Width = 2212 5 Width = 2212
6 Caption = 'hUGETracker' 6 Caption = 'hUGETracker'
7 ClientHeight = 1362 7 ClientHeight = 1362
@@ -53,10 +53,10 @@ object frmTracker: TfrmTracker
53 Height = 966 53 Height = 966
54 Top = 0 54 Top = 0
55 Width = 1865 55 Width = 1865
56 ActivePage = GeneralTabSheet 56 ActivePage = InstrumentTabSheet
57 Align = alClient 57 Align = alClient
58 ParentFont = False 58 ParentFont = False
59 TabIndex = 0 59 TabIndex = 2
60 TabOrder = 0 60 TabOrder = 0
61 object GeneralTabSheet: TTabSheet 61 object GeneralTabSheet: TTabSheet
62 Caption = 'General' 62 Caption = 'General'
@@ -1719,8 +1719,49 @@ object frmTracker: TfrmTracker
1719 Width = 2212 1719 Width = 2212
1720 Align = alTop 1720 Align = alTop
1721 BevelOuter = bvNone 1721 BevelOuter = bvNone
1722 ClientHeight = 312
1723 ClientWidth = 2212
1722 ParentFont = False 1724 ParentFont = False
1723 TabOrder = 3 1725 TabOrder = 3
1726 object Panel6: TPanel
1727 Left = 1522
1728 Height = 312
1729 Top = 0
1730 Width = 690
1731 Align = alRight
1732 AutoSize = True
1733 ClientHeight = 312
1734 ClientWidth = 690
1735 TabOrder = 0
1736 object Duty1Visualizer: TPaintBox
1737 Left = 1
1738 Height = 152
1739 Top = 1
1740 Width = 344
1741 OnPaint = Duty1VisualizerPaint
1742 end
1743 object WaveVisualizer: TPaintBox
1744 Left = 1
1745 Height = 160
1746 Top = 153
1747 Width = 344
1748 OnPaint = WaveVisualizerPaint
1749 end
1750 object Duty2Visualizer: TPaintBox
1751 Left = 345
1752 Height = 152
1753 Top = 1
1754 Width = 344
1755 OnPaint = Duty2VisualizerPaint
1756 end
1757 object NoiseVisualizer: TPaintBox
1758 Left = 345
1759 Height = 160
1760 Top = 153
1761 Width = 344
1762 OnPaint = NoiseVisualizerPaint
1763 end
1764 end
1724 end 1765 end
1725 object StatusBar1: TStatusBar 1766 object StatusBar1: TStatusBar
1726 Left = 0 1767 Left = 0
@@ -1984,8 +2025,8 @@ object frmTracker: TfrmTracker
1984 end 2025 end
1985 end 2026 end
1986 object ImageList1: TImageList 2027 object ImageList1: TImageList
1987 left = 1129 2028 left = 232
1988 top = 75 2029 top = 80
1989 Bitmap = { 2030 Bitmap = {
1990 4C694D0000001000000010000000000000000000000000000000000000000000 2031 4C694D0000001000000010000000000000000000000000000000000000000000
1991 0000000000000000000000000000000000000000000000000000000000000000 2032 0000000000000000000000000000000000000000000000000000000000000000
@@ -4463,8 +4504,8 @@ object frmTracker: TfrmTracker
4463 top = 75 4504 top = 75
4464 end 4505 end
4465 object OrderEditPopup: TPopupMenu 4506 object OrderEditPopup: TPopupMenu
4466 left = 1325 4507 left = 376
4467 top = 75 4508 top = 80
4468 object MenuItem17: TMenuItem 4509 object MenuItem17: TMenuItem
4469 Caption = 'Insert new row' 4510 Caption = 'Insert new row'
4470 Hint = 'Insert a new row filled with brand new patterns' 4511 Hint = 'Insert a new row filled with brand new patterns'
@@ -4487,8 +4528,8 @@ object frmTracker: TfrmTracker
4487 object ImageList2: TImageList 4528 object ImageList2: TImageList
4488 Height = 32 4529 Height = 32
4489 Width = 32 4530 Width = 32
4490 left = 1129 4531 left = 232
4491 top = 187 4532 top = 168
4492 Bitmap = { 4533 Bitmap = {
4493 4C69020000002000000020000000000000000000000000000000000000000000 4534 4C69020000002000000020000000000000000000000000000000000000000000
4494 0000000000000000000000000000000000000000000000000000000000000000 4535 0000000000000000000000000000000000000000000000000000000000000000
Modifiedtracker.pas +36−1
@@ -9,7 +9,7 @@ uses
9 Menus, Spin, StdCtrls, ActnList, StdActns, SynEdit, math, Instruments, Waves, 9 Menus, Spin, StdCtrls, ActnList, StdActns, SynEdit, math, Instruments, Waves,
10 Song, EmulationThread, Utils, Constants, sound, vars, machine, 10 Song, EmulationThread, Utils, Constants, sound, vars, machine,
11 about_hugetracker, TrackerGrid, lclintf, lmessages, Buttons, Grids, DBCtrls, 11 about_hugetracker, TrackerGrid, lclintf, lmessages, Buttons, Grids, DBCtrls,
12 ECProgressBar, HugeDatatypes, LCLType, Codegen, SymParser; 12 ECProgressBar, HugeDatatypes, LCLType, RackCtls, Codegen, SymParser;
13 13
14 type 14 type
15 { TfrmTracker } 15 { TfrmTracker }
@@ -24,7 +24,12 @@ type
24 MenuItem18: TMenuItem; 24 MenuItem18: TMenuItem;
25 MenuItem19: TMenuItem; 25 MenuItem19: TMenuItem;
26 MenuItem20: TMenuItem; 26 MenuItem20: TMenuItem;
27 Duty1Visualizer: TPaintBox;
28 WaveVisualizer: TPaintBox;
29 Duty2Visualizer: TPaintBox;
30 NoiseVisualizer: TPaintBox;
27 Panel3: TPanel; 31 Panel3: TPanel;
32 Panel6: TPanel;
28 PasteAction: TAction; 33 PasteAction: TAction;
29 CopyAction: TAction; 34 CopyAction: TAction;
30 HelpLookupManual: TAction; 35 HelpLookupManual: TAction;
@@ -149,6 +154,8 @@ type
149 TrackerGrid: TTrackerGrid; 154 TrackerGrid: TTrackerGrid;
150 procedure CopyActionExecute(Sender: TObject); 155 procedure CopyActionExecute(Sender: TObject);
151 procedure CutActionExecute(Sender: TObject); 156 procedure CutActionExecute(Sender: TObject);
157 procedure Duty1VisualizerPaint(Sender: TObject);
158 procedure Duty2VisualizerPaint(Sender: TObject);
152 procedure FileOpen1Accept(Sender: TObject); 159 procedure FileOpen1Accept(Sender: TObject);
153 procedure FileSaveAs1Accept(Sender: TObject); 160 procedure FileSaveAs1Accept(Sender: TObject);
154 procedure HeaderControl1MouseDown(Sender: TObject; Button: TMouseButton; 161 procedure HeaderControl1MouseDown(Sender: TObject; Button: TMouseButton;
@@ -180,6 +187,7 @@ type
180 procedure MenuItem19Click(Sender: TObject); 187 procedure MenuItem19Click(Sender: TObject);
181 procedure MenuItem5Click(Sender: TObject); 188 procedure MenuItem5Click(Sender: TObject);
182 procedure NoiseFreqSpinnerChange(Sender: TObject); 189 procedure NoiseFreqSpinnerChange(Sender: TObject);
190 procedure NoiseVisualizerPaint(Sender: TObject);
183 procedure OrderEditStringGridAfterSelection(Sender: TObject; aCol, 191 procedure OrderEditStringGridAfterSelection(Sender: TObject; aCol,
184 aRow: Integer); 192 aRow: Integer);
185 procedure OrderEditStringGridColRowDeleted(Sender: TObject; 193 procedure OrderEditStringGridColRowDeleted(Sender: TObject;
@@ -220,6 +228,7 @@ type
220 procedure SweepTimeComboboxChange(Sender: TObject); 228 procedure SweepTimeComboboxChange(Sender: TObject);
221 procedure WaveformComboboxChange(Sender: TObject); 229 procedure WaveformComboboxChange(Sender: TObject);
222 procedure WavePaintboxPaint(Sender: TObject); 230 procedure WavePaintboxPaint(Sender: TObject);
231 procedure WaveVisualizerPaint(Sender: TObject);
223 procedure WaveVolumeComboboxChange(Sender: TObject); 232 procedure WaveVolumeComboboxChange(Sender: TObject);
224 private 233 private
225 Song: TSong; 234 Song: TSong;
@@ -253,6 +262,7 @@ type
253 procedure UpdateUIAfterLoad; 262 procedure UpdateUIAfterLoad;
254 263
255 procedure DrawWaveform(PB: TPaintBox; Wave: TWave); 264 procedure DrawWaveform(PB: TPaintBox; Wave: TWave);
265 procedure DrawVizualizer(PB: TPaintBox; Channel: Integer);
256 266
257 procedure PreviewInstrument(Freq: Integer; Instr: Integer); 267 procedure PreviewInstrument(Freq: Integer; Instr: Integer);
258 public 268 public
@@ -324,6 +334,11 @@ begin
324 end; 334 end;
325 end; 335 end;
326 336
337 procedure TfrmTracker.DrawVizualizer(PB: TPaintBox; Channel: Integer);
338 begin
339
340 end;
341
327 procedure TfrmTracker.PreviewInstrument(Freq: Integer; Instr: Integer); 342 procedure TfrmTracker.PreviewInstrument(Freq: Integer; Instr: Integer);
328 var 343 var
329 Regs: TRegisters; 344 Regs: TRegisters;
@@ -580,6 +595,11 @@ begin
580 DrawWaveform(WavePaintbox, Song.Waves[WaveformCombobox.ItemIndex]); 595 DrawWaveform(WavePaintbox, Song.Waves[WaveformCombobox.ItemIndex]);
581 end; 596 end;
582 597
598 procedure TfrmTracker.WaveVisualizerPaint(Sender: TObject);
599 begin
600
601 end;
602
583 procedure TfrmTracker.WaveVolumeComboboxChange(Sender: TObject); 603 procedure TfrmTracker.WaveVolumeComboboxChange(Sender: TObject);
584 begin 604 begin
585 CurrentInstrument^.OutputLevel := WaveVolumeCombobox.ItemIndex; 605 CurrentInstrument^.OutputLevel := WaveVolumeCombobox.ItemIndex;
@@ -861,6 +881,16 @@ begin
861 PostMessage(Screen.ActiveControl.Handle, LM_CUT, 0, 0); 881 PostMessage(Screen.ActiveControl.Handle, LM_CUT, 0, 0);
862 end; 882 end;
863 883
884 procedure TfrmTracker.Duty1VisualizerPaint(Sender: TObject);
885 begin
886
887 end;
888
889 procedure TfrmTracker.Duty2VisualizerPaint(Sender: TObject);
890 begin
891
892 end;
893
864 procedure TfrmTracker.CopyActionExecute(Sender: TObject); 894 procedure TfrmTracker.CopyActionExecute(Sender: TObject);
865 begin 895 begin
866 PostMessage(Screen.ActiveControl.Handle, LM_COPY, 0, 0); 896 PostMessage(Screen.ActiveControl.Handle, LM_COPY, 0, 0);
@@ -975,6 +1005,11 @@ begin
975 CurrentInstrument^.ShiftClockFreq := Round(NoiseFreqSpinner.Position); 1005 CurrentInstrument^.ShiftClockFreq := Round(NoiseFreqSpinner.Position);
976 end; 1006 end;
977 1007
1008 procedure TfrmTracker.NoiseVisualizerPaint(Sender: TObject);
1009 begin
1010
1011 end;
1012
978 procedure TfrmTracker.OrderEditStringGridAfterSelection(Sender: TObject; aCol, 1013 procedure TfrmTracker.OrderEditStringGridAfterSelection(Sender: TObject; aCol,
979 aRow: Integer); 1014 aRow: Integer);
980 begin 1015 begin