diff --git a/SourceGenWPF/WpfGui/EditStatusFlags.xaml b/SourceGenWPF/WpfGui/EditStatusFlags.xaml index b8c9729..42bd39c 100644 --- a/SourceGenWPF/WpfGui/EditStatusFlags.xaml +++ b/SourceGenWPF/WpfGui/EditStatusFlags.xaml @@ -27,205 +27,144 @@ limitations under the License. Loaded="Window_Loaded"> - + + Override the processor state values determined by the code analyzer. - - - - Default - Zero - One - Indeterminate - + + + + + + + + + + + + + + + + + + + + + + + - - - N - - - - - - - - - - - - - - - - - + N + V + M + X + D + I + Z + C + E - - V - - - - - - - - - - - - - - - - - + Default + Zero + One + Indeterminate - - M - - - - - - - - - - - - - - - - - + + + + + + + + - - X - - - - - - - - - - - - - - - - - + + + + - - D - - - - - - - - - - - - - - - - - + + + + - - I - - - - - - - - - - - - - - - - - + + + + - - Z - - - - - - - - - - - - - - - - - + + + + - - C - - - - - - - - - - - - - - - - - + + + + - - E - - - - - - - - - - - - - - - - - - + + + + + + + + + + Tip: to configure 16-bit wide regs on 65802/65816, set M, X, and E to 0. diff --git a/SourceGenWPF/WpfGui/EditStatusFlags.xaml.cs b/SourceGenWPF/WpfGui/EditStatusFlags.xaml.cs index 4c37d83..9d922c0 100644 --- a/SourceGenWPF/WpfGui/EditStatusFlags.xaml.cs +++ b/SourceGenWPF/WpfGui/EditStatusFlags.xaml.cs @@ -45,9 +45,9 @@ namespace SourceGenWPF.WpfGui { private void Window_Loaded(object sender, RoutedEventArgs e) { if (!mHasEmuFlag) { - panelM.IsEnabled = false; - panelX.IsEnabled = false; - panelE.IsEnabled = false; + DisableColumn(radioMDefault, radioMZero, radioMOne, radioMIndeterminate); + DisableColumn(radioXDefault, radioXZero, radioXOne, radioXIndeterminate); + DisableColumn(radioEDefault, radioEZero, radioEOne, radioEIndeterminate); // I'm not going to force the M/X/E flags to have a particular value based // on the CPU definition. The flags aren't used for non-65802/65816, so @@ -60,6 +60,11 @@ namespace SourceGenWPF.WpfGui { SetCheckedButtons(); } + private void DisableColumn(RadioButton def, RadioButton zero, RadioButton one, + RadioButton indeterminate) { + def.IsEnabled = zero.IsEnabled = one.IsEnabled = indeterminate.IsEnabled = false; + } + private void OkButton_Click(object sender, RoutedEventArgs e) { StatusFlags flags = new StatusFlags();