Skip to content

Conversation

@julerobb1
Copy link
Owner

Regenerated release binaries and related build outputs for ProcessorEmulator. Assembly informational version and SourceLink references updated to reflect latest commit.

Regenerated release binaries and related build outputs for ProcessorEmulator. Assembly informational version and SourceLink references updated to reflect latest commit.
julerobb1 added 26 commits July 27, 2025 13:08
Regenerated build artifacts to reflect the latest source commit. No changes to source code; only assembly info, cache, and sourcelink metadata updated.
Deleted CarlContainmentProtocol.cs and CustomArmBios.cs, removing unused or legacy code. Refactored ErrorManager.cs to clean up pop culture error codes, simplify error handling, and update message text. Restored and enabled the BoltDemo Main method. Updated CI workflow for simplified build and test steps. Added FEATURE_NOTES.md, FirmwareStreamer.cs, FirmwareUnpacker.cs, and MediaroomBootManager.cs.
Introduces HypervisorWindow for displaying boot messages and controlling VM power/reset. VirtualMachineHypervisor now analyzes firmware for ARM instructions, loads firmware into virtual memory, and executes basic ARM instructions with a simple decoder. Real and test ARM code paths are supported, and the UI is launched on the main thread for user interaction.
Replaced the XAML-based UI in HypervisorWindow with manual UI construction in code-behind. Enhanced VirtualMachineHypervisor to support real ARM Cortex-A15 emulation using Unicorn, including instruction tracing and decoding. Updated project file to include HypervisorWindow.xaml and improved boot message logging for hypervisor startup.
Replaces Unicorn-based ARM emulation with a custom instruction scanner and executor. Adds real ARM instruction decoding, register updates, and execution tracing for firmware analysis. Improves logging and error handling for encrypted or invalid firmware cases.
Regenerated build artifacts and updated SourceLink information to reference the latest commit. No changes to application logic.
Changed private field names in HypervisorWindow.xaml.cs to camelCase for consistency and updated comments to clarify programmatic UI creation. No functional changes were made; this improves code readability and maintainability.
Changed HypervisorWindow class to partial to support XAML code-behind conventions. Updated VSCode settings to enable Copilot for SCM input. Includes build output updates.
Updated .gitignore to stop ignoring DLL files. Added BoltDemo.dll and related build artifacts to the repository for BoltDemo_Standalone under bin and obj directories.
Moved UI creation for HypervisorWindow to code-behind, removed Grid from XAML, and set window properties programmatically. Added UverseFirmware binaries required for platform emulation.
Improved VirtualMachineHypervisor to load firmware and set ARM registers before executing real instructions, removing fake boot messages and ensuring accurate boot flow. Added 'Custom Hypervisor' handling in MainWindow for future extensibility. Updated copilot-instructions.md with expanded guidelines and philosophy for contributors.
Replaces all usage of VirtualMachineHypervisor with the new RealMipsHypervisor for actual MIPS instruction execution via native DLL. Updates UI and logic in HypervisorWindow, MainWindow, RDKVEmulator, TestHypervisor, and related files to reflect the new hypervisor and real MIPS emulation. Removes obsolete stub and fixed emulator files, and adds RealMipsHypervisor.cs with native interop for U-verse firmware execution. Also includes minor async improvements and disables Copilot in plaintext/markdown in VSCode settings.
Introduces a comprehensive Comcast X1 Platform emulator with real firmware analysis, backend service connectivity, and domain-based firmware discovery. Adds ComcastX1Emulator for hardware emulation, ComcastDomainParser and demo for endpoint and firmware URL analysis, and integrates X1 emulation into the main UI. Also includes a PowerShell script for running the domain parser and updates file type detection for X1 firmware signatures.
Introduces ComcastX1Test.cs to provide a quick test for the Comcast X1 emulator and domain parser functionality, including export and endpoint analysis. Also updates run-comcast-domain-parser.ps1 to remove assignment of dotnet run output to a variable, streamlining script execution.
Replaces the previous ComcastX1Emulator implementation with a new version that uses real QEMU-based emulation for ARM/MIPS chipsets, removing fake implementations and legacy configuration code. Updates MainWindow.xaml.cs to auto-detect firmware type and route to the new emulator, and updates ComcastX1Test.cs to test the new real emulator. Adds ComcastX1Emulator_New.cs as the new implementation and removes legacy platform config and backend endpoint logic.
julerobb1 and others added 19 commits August 4, 2025 22:33
Updated several classes to use long and int types instead of uint for memory addresses and values, improving compatibility and consistency. Added missing constructor to VxWorksVersion, removed unused variable in YaffsExtractor, and marked X86CpuEmulator as CLS-compliant. These changes address static analysis warnings and improve code clarity.
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Changed ReadRegister and WriteRegister methods across all emulator classes and interfaces to use 'long' instead of 'uint' for address parameters, improving support for 64-bit address spaces. Updated related struct fields and memory size properties to 'long' where appropriate. Added HardwareHealthProbe utility and enhanced UI with drop shadow and transparency. InstructionTranslator class expanded with stub handlers for ARM/MIPS instructions.
Reworked InstructionTranslator to use async instruction handlers and improved ARM/MIPS instruction handling logic. Archived the old stub version as InstructionTranslator_Archive.cs for reference. Minor attribute cleanup in CortexA15Cpu.cs. Updated project file to exclude the archived stub from compilation.
Added System.Management as a project reference in ProcessorEmulator.csproj. Updated CortexA15Cpu.cs to include an await Task.CompletedTask statement in MMU initialization. Fixed duplicate using directive in HardwareHealthProbe.cs.
Added Aero-like brushes and button styles to ClassicStyle.xaml for improved Windows 7 look. MainWindow.xaml now uses standard window chrome and dynamic background brush. Updated project to use System.Management NuGet package for .NET Core/.NET 6 compatibility. Added AssemblyInfo.cs to suppress CLS compliance warnings. Refactored register access in ExoticFilesystemManager for long addressing. Fixed instruction dispatch type casting for x86. Minor code cleanup in CortexA15Cpu and HardwareHealthProbe.
Introduces AeroGlassHelper, Win7Chrome, and Windows7ThemeManager for authentic Windows 7 glass effects and custom chrome. MainWindow and App startup logic are refactored to load resource dictionaries at runtime, apply glass, and support dynamic theme toggling. The UI is redesigned for Aero glass, with enhanced styles, custom title bar, and live tint adjustment. Project file and resource management are updated to support new icons and exclude legacy files.
Introduces AppThemeManager for managing application themes, including a new 'Carl Mode (BALD)' theme defined in CarlMode.xaml. Updates MainWindow to provide a theme selection menu and handle theme changes, replacing the previous Windows 7 mode toggle. Theme selection is persisted in the registry and applied on startup.
Updated gradient colors in ClassicStyle.xaml for a more accurate Windows 7/Vista look. MainWindow.xaml now uses the themed background brush for the content area, ensuring it remains fully opaque. Adjusted MainWindow.xaml.cs logic to only apply glass effects to the chrome region, leaving content surfaces opaque.
Increased opacity values for menu and status brushes, decreased panel brush opacity for improved visual effect. Added SupportedOSPlatform attribute to Windows7ThemeManager to indicate Windows-specific usage.
@julerobb1 julerobb1 added bug Something isn't working invalid This doesn't seem right labels Aug 24, 2025
ITS A LLAMA AND CARL ATtaCK... RUN

Carl, he works the camera
Carl, he knows what all those buttons do
Carl, he'll clear the paper jam
Carl, and he'll pick up the laundry, too.

He knows how to format,spellcheck,text, edit.
He's working the job just for college credit.
He's Carl the Intern
Replaced explicit namespace prefixes (e.g., System.IO, System.Threading) with direct type usage for clarity and consistency. Improved Aero glass initialization and handling for Windows 10/11, including more robust blur and color settings. Updated XAML to remove unnecessary transparency and noise layers, ensuring content backgrounds are opaque for Win7 style. Fixed resource dictionary merges and theme application logic to better support non-Windows platforms. Minor code cleanups and simplifications throughout for maintainability.
Replaced fully qualified usages of System.Threading.Tasks.Task and System.IO.File with direct references to Task and File. This improves code readability and assumes appropriate using directives are present.
Improves Aero glass handling for Windows 7 and later by refactoring glass initialization and fallback logic, updating resource dictionary usage to consistently reference Application.Current, and enhancing XAML to support glass/tint/noise layers. Removes hardcoded foreground colors from menu styles, updates theme manager to use translucent backgrounds, and streamlines code to use fully qualified namespaces for IO and diagnostics. Also fixes architecture detection and QEMU installer references, and improves status reporting for Windows CE execution.
Added WindowChrome to MainWindow.xaml for proper resize handles and non-client frame. Updated title bar and caption buttons to use WindowChrome hit testing. Introduced SetupCustomTitleBar in code-behind to handle drag, double-click maximize, system menu, and caption button actions, replacing previous Win7Chrome logic.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working enhancement New feature or request invalid This doesn't seem right

Projects

None yet

Development

Successfully merging this pull request may close these issues.

TODO [nitpick] Consider adding a caching step (e.g., using actions/cache) for NuGet packages to speed up restore times in the workflow.

2 participants