Mesen2/UI/Debugger/StatusViews/NecDspStatusView.axaml
Sour d208fdc6a7 UI: Support for NativeAOT
Added Windows & Linux builds using AOT compilation
2024-06-05 20:23:31 +09:00

136 lines
4.9 KiB
XML

<UserControl
xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:du="using:Mesen.Debugger.Utilities"
xmlns:vm="using:Mesen.Debugger.StatusViews"
xmlns:c="using:Mesen.Controls"
mc:Ignorable="d" d:DesignWidth="350"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch"
x:DataType="vm:NecDspStatusViewModel"
x:Class="Mesen.Debugger.StatusViews.NecDspStatusView"
>
<Design.DataContext>
<vm:NecDspStatusViewModel />
</Design.DataContext>
<UserControl.Styles>
<StyleInclude Source="/Styles/DebugStatusStyles.xaml" />
</UserControl.Styles>
<ScrollViewer>
<DockPanel>
<StackPanel DockPanel.Dock="Top" IsEnabled="{Binding EditAllowed}">
<WrapPanel MaxWidth="300" HorizontalAlignment="Left">
<WrapPanel.Styles>
<Style Selector="StackPanel > TextBlock">
<Setter Property="MinWidth" Value="25" />
</Style>
<Style Selector="StackPanel > TextBox">
<Setter Property="Margin" Value="0 1 3 1" />
</Style>
</WrapPanel.Styles>
<StackPanel Orientation="Horizontal">
<TextBlock>TR:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegTR}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>TRB:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegTRB}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>PC:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegPC}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>SP:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegSP}" Hex="True" Max="8" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>RP:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegRP}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>DP:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegDP}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>DR:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegDR}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>SR:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegSR}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>K:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegK}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>L:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegL}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>M:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegM}" Hex="True" Max="0xFFFF" />
</StackPanel>
<StackPanel Orientation="Horizontal">
<TextBlock>N:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegN}" Hex="True" Max="0xFFFF" />
</StackPanel>
</WrapPanel>
<Rectangle Stroke="{StaticResource MesenGrayBorderColor}" StrokeThickness="1" Margin="5 5 5 2" />
<WrapPanel Margin="0 2 0 0" DockPanel.Dock="Top">
<StackPanel Orientation="Horizontal">
<TextBlock>A:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegA}" Hex="True" Max="0xFFFF" />
</StackPanel>
<WrapPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegA_C}" Content="Carry" />
<CheckBox IsChecked="{Binding RegA_Z}" Content="Zero" />
</StackPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegA_V0}" Content="Overflow 0" />
<CheckBox IsChecked="{Binding RegA_V1}" Content="Overflow 1" />
</StackPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegA_S0}" Content="Sign 0" />
<CheckBox IsChecked="{Binding RegA_S1}" Content="Sign 1" />
</StackPanel>
</WrapPanel>
</WrapPanel>
<WrapPanel Margin="0 5 0 0" DockPanel.Dock="Top">
<StackPanel Orientation="Horizontal">
<TextBlock>B:</TextBlock>
<c:MesenNumericTextBox Value="{Binding RegB}" Hex="True" Max="0xFFFF" />
</StackPanel>
<WrapPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegB_C}" Content="Carry" />
<CheckBox IsChecked="{Binding RegB_Z}" Content="Zero" />
</StackPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegB_V0}" Content="Overflow 0" />
<CheckBox IsChecked="{Binding RegB_V1}" Content="Overflow 1" />
</StackPanel>
<StackPanel>
<CheckBox IsChecked="{Binding RegB_S0}" Content="Sign 0" />
<CheckBox IsChecked="{Binding RegB_S1}" Content="Sign 1" />
</StackPanel>
</WrapPanel>
</WrapPanel>
</StackPanel>
</DockPanel>
</ScrollViewer>
</UserControl>