Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
233 commits
Select commit Hold shift + click to select a range
dc48fa1
Add DirecTV firmware filename parser helper
julerobb1 Jul 8, 2025
aaa290f
Update MainWindow.xaml.cs
julerobb1 Jul 9, 2025
01c75c8
Update ProcessorEmulator.exe
julerobb1 Jul 9, 2025
4738b85
Create .NETCoreApp,Version=v6.0.AssemblyAttributes.cs
julerobb1 Jul 9, 2025
c0483ad
Create ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 9, 2025
f35589f
Create ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 9, 2025
17d85be
Create ProcessorEmulator.assets.cache
julerobb1 Jul 9, 2025
84c5251
Create ProcessorEmulator.GeneratedMSBuildEditorConfig.editorconfig
julerobb1 Jul 9, 2025
8d58667
Update apphost.exe
julerobb1 Jul 9, 2025
e2592f8
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 9, 2025
7758382
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 9, 2025
88a8a1f
Update ProcessorEmulator.csproj.CoreCompileInputs.cache
julerobb1 Jul 9, 2025
a242c54
Update ProcessorEmulator.dll
julerobb1 Jul 9, 2025
7947a45
Update ProcessorEmulator.dll
julerobb1 Jul 9, 2025
a6b2141
Update ProcessorEmulator.dll
julerobb1 Jul 9, 2025
4aa430d
Update ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 9, 2025
0a11a70
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 9, 2025
ae96dab
Update ProcessorEmulator.genruntimeconfig.cache
julerobb1 Jul 9, 2025
f061a00
Add drag-and-drop support and new emulation stubs
julerobb1 Jul 9, 2025
63d21b6
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 9, 2025
64e7dbb
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 9, 2025
5946c93
Add ChipReferenceManager for chip info lookup
julerobb1 Jul 9, 2025
8b280ba
Merge pull request #8 from julerobb1/main
julerobb1 Jul 9, 2025
f88dd41
Add STMicro SoCs to chip reference dictionary
julerobb1 Jul 9, 2025
6a62421
Merge branch 'dev' of https://github.com/julerobb1/Processor-Emulator…
julerobb1 Jul 9, 2025
98122be
Add BinaryTranslator utility class
julerobb1 Jul 10, 2025
607facd
Add cross-compile binary feature to main menu
julerobb1 Jul 10, 2025
4fea7b7
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 10, 2025
3152eb6
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 10, 2025
b907a87
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 10, 2025
52c5230
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 10, 2025
a8efcef
Update ProcessorEmulator.assets.cache
julerobb1 Jul 10, 2025
4b7f314
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 10, 2025
a57c3a7
Update ProcessorEmulator.csproj.nuget.g.props
julerobb1 Jul 10, 2025
6093c19
Update project.assets.json
julerobb1 Jul 10, 2025
8ccb86c
Update project.nuget.cache
julerobb1 Jul 10, 2025
e26737a
Update ProcessorEmulator.csproj
julerobb1 Jul 10, 2025
aa3bd83
Update README.md
julerobb1 Jul 10, 2025
80d07ed
Update BinaryTranslator.cs
julerobb1 Jul 10, 2025
214af3f
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 11, 2025
6268ee4
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 11, 2025
0eb2a35
Update ProcessorEmulator.assets.cache
julerobb1 Jul 11, 2025
236cf29
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 11, 2025
fed1eda
Update project.assets.json
julerobb1 Jul 11, 2025
9c1e18b
Update project.nuget.cache
julerobb1 Jul 11, 2025
01b1ee5
Update ProcessorEmulator.csproj
julerobb1 Jul 11, 2025
b419378
Update BinaryTranslator.cs
julerobb1 Jul 11, 2025
4c23632
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 11, 2025
86487c5
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 11, 2025
dd7eee0
Update ProcessorEmulator.assets.cache
julerobb1 Jul 11, 2025
68d54b8
Update ProcessorEmulator.csproj
julerobb1 Jul 11, 2025
8809e9b
Create App.g.cs
julerobb1 Jul 11, 2025
c3016b3
Create App.baml
julerobb1 Jul 11, 2025
aa91990
Create apphost.exe
julerobb1 Jul 11, 2025
d4cea89
Create ProcessorEmulator.runtimeconfig.json
julerobb1 Jul 11, 2025
b5c79df
Create ProcessorEmulator.deps.json
julerobb1 Jul 11, 2025
588f2b4
Create ProcessorEmulator.exe
julerobb1 Jul 11, 2025
68e997e
Create ClassicStyle.baml
julerobb1 Jul 11, 2025
67535b7
Create MainWindow.baml
julerobb1 Jul 11, 2025
e887496
Create MainWindow.g.cs
julerobb1 Jul 11, 2025
6c9a24c
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 11, 2025
127138a
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 11, 2025
8f419b9
Update ProcessorEmulator.assets.cache
julerobb1 Jul 11, 2025
5e70bd4
Create ProcessorEmulator.csproj.CoreCompileInputs.cache
julerobb1 Jul 11, 2025
ed5e240
Create ProcessorEmulator.csproj.FileListAbsolute.txt
julerobb1 Jul 11, 2025
659bc83
Create ProcessorEmulator.g.resources
julerobb1 Jul 11, 2025
c7343f9
Update ProcessorEmulator.GeneratedMSBuildEditorConfig.editorconfig
julerobb1 Jul 11, 2025
159f29a
Create ProcessorEmulator.genruntimeconfig.cache
julerobb1 Jul 11, 2025
06d9e08
Create ProcessorEmulator.sourcelink.json
julerobb1 Jul 11, 2025
0ca63c5
Create ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 11, 2025
64d931c
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 11, 2025
9d63f88
Update ProcessorEmulator.csproj.nuget.g.props
julerobb1 Jul 11, 2025
6f44c96
Update project.assets.json
julerobb1 Jul 11, 2025
9e87696
Update project.nuget.cache
julerobb1 Jul 11, 2025
6bbb3df
Update ProcessorEmulator.csproj
julerobb1 Jul 11, 2025
d4112fc
Update BinaryTranslator.cs
julerobb1 Jul 11, 2025
431f7fb
Update dotnet.yml
julerobb1 Jul 11, 2025
e0b3ea6
Update MainWindow.xaml.cs
julerobb1 Jul 12, 2025
f653017
Merge branch 'dev' of https://github.com/julerobb1/Processor-Emulator…
julerobb1 Jul 12, 2025
90a94e0
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 12, 2025
cfe77f6
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 12, 2025
74b937c
Update ProcessorEmulator.assets.cache
julerobb1 Jul 12, 2025
6aed733
Update ProcessorEmulator.GeneratedMSBuildEditorConfig.editorconfig
julerobb1 Jul 12, 2025
af99d6c
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 12, 2025
f489801
Update project.nuget.cache
julerobb1 Jul 12, 2025
f03ff15
Update ProcessorEmulator.csproj
julerobb1 Jul 12, 2025
fb2f33d
Update QemuManager.cs
julerobb1 Jul 12, 2025
ec26567
Update BinaryTranslator.cs
julerobb1 Jul 12, 2025
31d9ab3
Update MainWindow.xaml.cs
julerobb1 Jul 12, 2025
31911c1
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 12, 2025
17f7b15
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 12, 2025
aa9e0d2
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 12, 2025
ab84e96
Update ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 12, 2025
80f9562
Stub UnicornSharp with in-process Unicorn namespace
julerobb1 Jul 12, 2025
2d2b3a1
Update BinaryTranslator.cs
julerobb1 Jul 12, 2025
739b982
Add UnicornEngine stub implementation
julerobb1 Jul 12, 2025
1128c3a
Update assembly info and cache for new build
julerobb1 Jul 12, 2025
ccf35d4
Update BinaryTranslator.cs
julerobb1 Jul 12, 2025
f38a21c
Update BinaryTranslator.cs
julerobb1 Jul 13, 2025
76719f4
Update ArchiveExtractor.cs
julerobb1 Jul 13, 2025
3604b09
Remove unused using directive in ArmCpuEmulator.cs
julerobb1 Jul 13, 2025
5b594c5
Update BinaryScanner.cs
julerobb1 Jul 13, 2025
28875b1
Update DirecTVEmulator.cs
julerobb1 Jul 13, 2025
de58de3
Update DvrVxWorksDetector.cs
julerobb1 Jul 13, 2025
06c9bc3
Update Emulation.cs
julerobb1 Jul 13, 2025
aeeb920
Update EmulatorLauncher.cs
julerobb1 Jul 13, 2025
546749a
Update ExoticFilesystemManager.cs
julerobb1 Jul 13, 2025
60de283
Update FilesystemProber.cs
julerobb1 Jul 13, 2025
9ad9f25
Update FileSystems.cs
julerobb1 Jul 13, 2025
6160112
Update FirmwareAnalyzer.cs
julerobb1 Jul 13, 2025
5a34efd
Update LinuxFileSystems.cs
julerobb1 Jul 13, 2025
ef52ca4
Update MainWindow.xaml.cs
julerobb1 Jul 13, 2025
5b3cbaa
Update MipsCpuEmulator.cs
julerobb1 Jul 13, 2025
6fcb544
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 13, 2025
082e8cb
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 13, 2025
cbbbcb7
Update ProcessorEmulator.csproj.CoreCompileInputs.cache
julerobb1 Jul 13, 2025
9dc24f2
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 13, 2025
6f71baf
Update ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 13, 2025
5523bd3
Update RDKVEmulator.cs
julerobb1 Jul 13, 2025
35ea5be
Update SatelliteStreamEmulator.cs
julerobb1 Jul 13, 2025
753c6ff
Update SwmLnbEmulator.cs
julerobb1 Jul 13, 2025
5fce4a3
Update Tools.cs
julerobb1 Jul 13, 2025
a6aa092
Update BinaryTranslator.cs
julerobb1 Jul 13, 2025
5ec11dc
Update UverseEmulator.cs
julerobb1 Jul 13, 2025
c7f4eb2
Update WinCEEmulator.cs
julerobb1 Jul 13, 2025
94f5588
Update X86CpuEmulator.cs
julerobb1 Jul 13, 2025
8fdf87e
Refactor StubUnicorn namespace and memory manager stubs
julerobb1 Jul 13, 2025
d97c5ea
Refactor StubUnicorn stubs and add missing classes
julerobb1 Jul 13, 2025
68cf39b
Add UnicornEngine enums and class definition
julerobb1 Jul 13, 2025
ee34e1b
Update assembly info and cache for new build
julerobb1 Jul 13, 2025
38b9298
Update BinaryTranslator.cs
julerobb1 Jul 13, 2025
1e2d399
Refactor StubUnicorn stubs and improve error handling
julerobb1 Jul 13, 2025
45bfca6
Update assembly info and cache files
julerobb1 Jul 13, 2025
391029e
Update MainWindow.xaml.cs
julerobb1 Jul 13, 2025
1f1468d
Update build output and source link metadata
julerobb1 Jul 13, 2025
030c8c9
Create settings.json
julerobb1 Jul 13, 2025
40757ca
Update ProcessorEmulator.exe
julerobb1 Jul 13, 2025
fa9f72b
Update MainWindow.xaml.cs
julerobb1 Jul 13, 2025
96e9445
Update apphost.exe
julerobb1 Jul 13, 2025
47257cf
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 13, 2025
cdb9cd5
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 13, 2025
71698cb
Update ProcessorEmulator.assets.cache
julerobb1 Jul 13, 2025
441bb69
Update ProcessorEmulator.GeneratedMSBuildEditorConfig.editorconfig
julerobb1 Jul 13, 2025
e8fb486
Update ProcessorEmulator.genruntimeconfig.cache
julerobb1 Jul 13, 2025
343e6f0
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 13, 2025
c89c40a
Update ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 13, 2025
131f4cd
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 13, 2025
fd7fe23
Update project.nuget.cache
julerobb1 Jul 13, 2025
8d73a4d
Update ProcessorEmulator.exe
julerobb1 Jul 13, 2025
43320e6
Update HomebrewEmulator.cs
julerobb1 Jul 13, 2025
5a27049
Update MainWindow.xaml
julerobb1 Jul 13, 2025
4c6edc9
Update MainWindow.xaml.cs
julerobb1 Jul 13, 2025
78ee59e
Update apphost.exe
julerobb1 Jul 13, 2025
f95ac2a
Update MainWindow.baml
julerobb1 Jul 13, 2025
70adc53
Update MainWindow.g.cs
julerobb1 Jul 13, 2025
7c483a5
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 13, 2025
28591de
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 13, 2025
06cc265
Update ProcessorEmulator.g.resources
julerobb1 Jul 13, 2025
094374b
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 13, 2025
81e826d
Update BinaryTranslator.cs
julerobb1 Jul 13, 2025
6e2dc82
Update HomebrewEmulator.cs
julerobb1 Jul 13, 2025
e2a9aa1
Update HomebrewEmulator.cs
julerobb1 Jul 13, 2025
c74580e
Update build outputs for ProcessorEmulator
julerobb1 Jul 13, 2025
0db78de
Auto-detect architecture in HomebrewEmulator and RDK-V
julerobb1 Jul 14, 2025
f0430c5
Delete ProcessorEmulator.exe
julerobb1 Jul 14, 2025
a52e96a
Update HomebrewEmulator.cs
julerobb1 Jul 14, 2025
1e87e6d
Update MainWindow.xaml.cs
julerobb1 Jul 14, 2025
879d678
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 14, 2025
3a8a4f4
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 14, 2025
e9b0872
Update ProcessorEmulator.csproj.FileListAbsolute.txt
julerobb1 Jul 14, 2025
8d745d1
Update ProcessorEmulator.genruntimeconfig.cache
julerobb1 Jul 14, 2025
b9fb2d5
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 14, 2025
62d6fc6
Update ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 14, 2025
4539c76
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 14, 2025
4f052a5
Update project.assets.json
julerobb1 Jul 14, 2025
d80d089
Update project.nuget.cache
julerobb1 Jul 14, 2025
eaa0e6a
Update ProcessorEmulator.csproj
julerobb1 Jul 14, 2025
72c7e37
debug
julerobb1 Jul 14, 2025
4d9f04b
Update MainWindow.xaml.cs
julerobb1 Jul 14, 2025
62bbda2
Add GitHub Actions workflows and config files
julerobb1 Jul 14, 2025
e629100
_
julerobb1 Jul 14, 2025
fb8a13e
Create dotnet-build.yml
julerobb1 Jul 14, 2025
b9ec80f
Create dotnet-desktop-build.yml
julerobb1 Jul 14, 2025
3f2ee0c
Clean up in all the aisles
julerobb1 Jul 14, 2025
8a1f907
Create dependabot.yml
julerobb1 Jul 15, 2025
7c9320a
Create release-drafter.yml
julerobb1 Jul 15, 2025
f4538aa
Create tasks.json
julerobb1 Jul 15, 2025
c3623d3
Update ArchiveExtractor.cs
julerobb1 Jul 15, 2025
0a5bf79
Create ProcessorEmulator.exe
julerobb1 Jul 15, 2025
f008f54
Update MainWindow.xaml
julerobb1 Jul 15, 2025
4575ca5
Update MainWindow.xaml.cs
julerobb1 Jul 15, 2025
6cb7af7
Update apphost.exe
julerobb1 Jul 15, 2025
9ab806a
Update MainWindow.baml
julerobb1 Jul 15, 2025
ae66736
Update MainWindow.g.cs
julerobb1 Jul 15, 2025
665060a
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 15, 2025
f7be247
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 15, 2025
4131be5
Update ProcessorEmulator.csproj.FileListAbsolute.txt
julerobb1 Jul 15, 2025
c7db54d
Update ProcessorEmulator.g.resources
julerobb1 Jul 15, 2025
90a5e7a
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 15, 2025
8bebf1a
Delete ProcessorEmulator_MarkupCompile.cache
julerobb1 Jul 15, 2025
057c0f5
Update ProcessorEmulator.csproj.nuget.dgspec.json
julerobb1 Jul 15, 2025
3f968b2
Update project.assets.json
julerobb1 Jul 15, 2025
8812fd7
Update project.nuget.cache
julerobb1 Jul 15, 2025
f717d40
Update ProcessorEmulator.csproj
julerobb1 Jul 15, 2025
59fd014
Update ci.yml
julerobb1 Jul 15, 2025
832980e
Update QemuManager.cs
julerobb1 Jul 15, 2025
950febd
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 15, 2025
991facb
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 15, 2025
a233ea9
Update ProcessorEmulator.csproj
julerobb1 Jul 15, 2025
17974f4
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 15, 2025
ce920fb
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 15, 2025
1a020dd
Update MainWindow.xaml.cs
julerobb1 Jul 15, 2025
1f2a339
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 15, 2025
a7b1f3b
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 15, 2025
8927025
Update CI workflow and project for Windows Desktop
julerobb1 Jul 15, 2025
73f595d
Update ProcessorEmulator.exe
julerobb1 Jul 15, 2025
a34fdb3
Update MainWindow.xaml
julerobb1 Jul 15, 2025
860e4fd
Update MainWindow.xaml.cs
julerobb1 Jul 15, 2025
8928270
Update apphost.exe
julerobb1 Jul 15, 2025
da30bf0
Update ProcessorEmulator.AssemblyInfo.cs
julerobb1 Jul 15, 2025
b87c77f
Update ProcessorEmulator.AssemblyInfoInputs.cache
julerobb1 Jul 15, 2025
a088642
Update ProcessorEmulator.sourcelink.json
julerobb1 Jul 15, 2025
7dc8ab7
Update ProcessorEmulator.csproj
julerobb1 Jul 15, 2025
1e3904a
Update ChipReferenceManager.cs
julerobb1 Jul 15, 2025
8f63b7a
Update MainWindow.xaml.cs
julerobb1 Jul 15, 2025
10f3cbe
Update MainWindow.xaml.cs
julerobb1 Jul 15, 2025
da61a83
Update ChipReferenceManager.cs
julerobb1 Jul 15, 2025
0459f66
Add new chipset detection and remove CI workflow
julerobb1 Jul 15, 2025
1cf342e
Update ArchiveExtractor.cs
julerobb1 Jul 15, 2025
f12013d
Update ProcessorEmulator.exe
julerobb1 Jul 15, 2025
24c40e8
Update apphost.exe
julerobb1 Jul 15, 2025
4bd6b7c
Update build artifacts for new commit
julerobb1 Jul 15, 2025
bf6d95f
Add CI workflow and zip extraction fallback
julerobb1 Jul 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# GitHub Copilot Instructions

This document guides AI assistants when contributing to the Processor-Emulator repository.

## 1. Project Overview
- **Language & Framework**: C# (.NET 6) WPF application with a MainWindow UI and multiple emulator implementations.
- **Core Purpose**: Load and analyze firmware images, emulate CPU architectures, probe filesystems, and extract data.
- **Key Directories**:
- `/` root: main UI code (`App.xaml`, `MainWindow.xaml.cs`, `EmulatorLauncher.cs`)
- `/Emulation`: stub and SPARC emulators
- Files in root implement each chipset emulator and filesystem logic.

## 2. Coding Conventions
- **Naming**: PascalCase for public types and methods, _camelCase_ for private fields.
- **Async Patterns**: Use `async Task` for I/O or longer-running operations and `await` inside.
- **Helpers & Utilities**:
- Consolidate repeated logic in a single static helper.
- Place utility methods in `Tools.cs` or under a `Utilities` static class.
- **UI Interaction**: Use `Dispatcher.Invoke` or `await` to update UI from background threads. Use shared `ShowTextWindow` helper for log output.

## 3. AI Integration Guidelines
- **Refactor Duplicates**: When encountering duplicate local functions (e.g., `AnalyzeFileType`, `ShowTextWindow`), merge into one shared definition without hitting request limit, length limit or creating invalid responses or getting stuck in loops.
- **New Emulators**: Implement new `IChipsetEmulator` in its own file. Follow existing patterns: detect types, dispatch via `InstructionTranslator`.
- **File Placement**: Match namespace and folder. Root-level emulators go in `/Emulation` folder or root if project-wide.
- **Error Handling**: Leverage `try/catch` around disk I/O and emulator startup. Surface errors via `ShowTextWindow`.

## 4. Build & Run Tasks
- Use the existing `tasks.json`:
- **Build**: `dotnet build ProcessorEmulator.csproj`
- **Run**: `dotnet run --project ProcessorEmulator.csproj`
- No unit tests present; ensure manual end-to-end validation of firmware loads.

## 5. Pull Request Guidelines
- Target `dev` branch. Keep PRs focused and small.
- Include screenshots or logs for UI changes.
- Verify compile and smoke-test emulation scenarios local to Windows/.NET 6.

> _These instructions help AI assistants contribute consistently and correctly to the Processor-Emulator codebase._
Empty file added .github/dependabot.yml
Empty file.
Empty file added .github/release-drafter.yml
Empty file.
30 changes: 30 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: CI

on:
push:
branches: [dev, main]
pull_request:
branches: [dev, main]

jobs:
build:
name: Build on Windows
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'

- name: Restore dependencies
run: dotnet restore

- name: Build solution
run: dotnet build ProcessorEmulator.csproj --configuration Release --no-restore

- name: Run tests (if any)
run: |
echo "Skipping tests: no test projects defined."
24 changes: 24 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: "CodeQL Analysis"

on:
push:
branches: [dev, main]
pull_request:
branches: [dev, main]

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: csharp

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
7 changes: 7 additions & 0 deletions .github/workflows/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
version: 2
updates:
- package-ecosystem: "nuget"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 5
26 changes: 26 additions & 0 deletions .github/workflows/dotnet-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: ".NET Build"

on:
push:
branches: [dev, main]
pull_request:
branches: [dev, main]

jobs:
build:
name: build
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'

- name: Restore dependencies
run: dotnet restore

- name: Build solution
run: dotnet build Processor-Emulator.sln --configuration Release --no-restore
28 changes: 28 additions & 0 deletions .github/workflows/dotnet-desktop-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: ".NET Core Desktop build"

on:
push:
branches: [dev, main]
pull_request:
branches: [dev, main]

jobs:
build-debug:
name: build (Debug)
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'
- run: dotnet build ProcessorEmulator.csproj --configuration Debug

build-release:
name: build (Release)
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'
- run: dotnet build ProcessorEmulator.csproj --configuration Release
4 changes: 2 additions & 2 deletions .github/workflows/dotnet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ name: .NET Build

on:
push:
branches: [ main, master ]
branches: [ dev, main ]
pull_request:
branches: [ main, master ]
branches: [ dev, main ]

jobs:
build:
Expand Down
34 changes: 34 additions & 0 deletions .github/workflows/nightly-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Nightly Build

on:
schedule:
# every day at 3am UTC
- cron: '0 3 * * *'

jobs:
build:
name: Daily Windows Build
runs-on: windows-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'

- name: Restore dependencies
run: dotnet restore

- name: Build solution
run: dotnet build ProcessorEmulator.csproj --configuration Release --no-restore

- name: Publish artifacts
run: dotnet publish ProcessorEmulator.csproj --configuration Release --output artifacts

- name: Upload nightly artifact
uses: actions/upload-artifact@v3
with:
name: nightly-build
path: artifacts
35 changes: 35 additions & 0 deletions .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Release Drafter

on:
push:
branches: [dev, main]

jobs:
update_release_draft:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: release-drafter/release-drafter@v5
with:
config-name: "release-drafter.yml"
template: |
# 🎉 Release {{ version }}

Hello everyone!

We’re excited to share **{{ version }}** with you. Here’s what’s new:

{{#changes}}
{{> change}}
{{/changes}}

A heartfelt thank you to all contributors:
{{#contributors}}
- @{{this}}
{{/contributors}}

Stay tuned for more updates!
change-template: |
{{#if is:added}}✨ **New** {{description}} (thanks @{{author}})!{{/if}}
{{#if is:changed}}🔄 **Updated** {{description}} (thanks @{{author}})!{{/if}}
{{#if is:fixed}}🐞 **Fixed** {{description}} (thanks @{{author}})!{{/if}}
48 changes: 48 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: "Release on Tag"

on:
push:
# Trigger on git tags, e.g. v1.2.3
tags:
- 'v*'

jobs:
build-and-release:
runs-on: windows-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET 6 SDK
uses: actions/setup-dotnet@v3
with:
dotnet-version: '6.0.x'

- name: Build solution
run: |
dotnet restore
dotnet build ProcessorEmulator.csproj --configuration Release

- name: Publish artifacts
run: |
dotnet publish ProcessorEmulator.csproj --configuration Release --output artifacts

- name: Create GitHub Release
id: create_release
uses: actions/create-release@v1
with:
tag_name: ${{ github.ref_name }}
release_name: Release ${{ github.ref_name }}
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Upload Release Asset
uses: actions/upload-release-asset@v1
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: artifacts/ProcessorEmulator.exe
asset_name: ProcessorEmulator-${{ github.ref_name }}.exe
asset_content_type: application/octet-stream
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -256,4 +256,4 @@ bin/Release/net6.0-windows/share/locale/tr/LC_MESSAGES/qemu.mo
bin/Release/net6.0-windows/share/locale/uk/LC_MESSAGES/qemu.mo
bin/Release/net6.0-windows/share/locale/zh_CN/LC_MESSAGES/qemu.mo
bin/Release/net6.0-windows/share/man/man1/qemu.1
/.github

44 changes: 44 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
// Disable minimap for faster rendering
"editor.minimap.enabled": false,
// Reduce visual decorations
"editor.renderWhitespace": "none",
"editor.folding": false,
"editor.codeLens": false,
"editor.semanticHighlighting.enabled": false,

// Exclude build folders from file watchers and searches
"files.watcherExclude": {
"**/bin/**": true,
"**/obj/**": true
},
"search.exclude": {
"**/bin/**": true,
"**/obj/**": true
},

// Optimize C# performance
"omnisharp.enableRoslynAnalyzers": false,
"omnisharp.useModernNet": false,
"omnisharp.msbuildLogLevel": "quiet",
// Disable inlay hints to avoid LSP requests on null documents
"editor.inlayHints.enabled": "off",
"[csharp]": {
"editor.inlayHints.enabled": "off"
},
// Disable C# specific inlay hint settings
"csharp.inlayHints.parameterNames.enabled": "none",
"csharp.inlayHints.parameterTypes.enabled": "none",
"csharp.inlayHints.variableTypes.enabled": "none",

// Disable outline and breadcrumbs to reduce symbol requests
"outline.showFiles": false,
"breadcrumbs.enabled": false,

// Disable telemetry for reduced background activity
"telemetry.enableTelemetry": false,
"telemetry.telemetryLevel": "off",

// YAML: disable built-in validation to ignore ci.yml errors
"yaml.validate": false
}
19 changes: 19 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "Build Project",
"type": "shell",
"command": "dotnet build \"${workspaceFolder}/ProcessorEmulator.csproj\" --configuration Debug",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "shared"
},
"problemMatcher": ["$msCompile"]
}
]
}
Loading
Loading