Skip to content

AVR Simulator v0.1

Latest

Choose a tag to compare

@roboter roboter released this 21 Sep 13:06
· 6 commits to master since this release

What's Changed in v0.1

⚡ Emulation & GPIO Fixes

  • Port Output Level Resolution: Fixed GPIOPin.Value to read from IO[PORTx] when configured as OUTPUT (DDRx = 1) rather than IO[PINx]. This resolved the issue where LED indicators were not toggling on pin output writes.
  • Embedded Blink Example: Bundled Blink.hex and Blink.c into the output directory so the simulator auto-loads and executes PB5 blinking out of the box.

📦 Solution Restructure & Testing

  • Separated Core Engine & UI:
    • AVR-Simulator.Core (.NET 10 Class Library): Standalone emulation core, instruction decoders, memory map, and Intel HEX parser without GUI dependencies.
    • AVR-Simulator.UI (.NET 10 WPF): Visual desktop frontend with real-time port pin indicators and control menu.
  • Comprehensive Unit Testing:
    • Added AVR-Simulator.Core.Tests (20 unit tests) covering instruction execution, memory operations, and HEX decoding.
    • Added AVR-Simulator.UI.Tests (5 unit tests) for assembly and type integrity.

🎨 UI & UX Improvements

  • Console Window Removed: Eliminated console window allocation on startup; the simulator now runs as a clean, native WPF desktop application.
  • Modernized Port Display: Side-by-side pin state monitors for PORTB, PORTC, and PORTD with clear LED visual indicators.
  • Application Icon: Integrated custom hacker/robot icon (avr-hacker-icon.ico).

🚀 CI/CD & Automated Releases

  • Automated Test Workflow: Added .github/workflows/test.yml running on push, PR, and manual dispatch.
  • Gated Releases: Added Test workflow as a required prerequisite check before any release can be created.
  • Single-File Standalone Release: Compiles self-contained executable bundles with all necessary dependencies and sample assets attached directly to the release page.
  • Status Badges: Added Test and Release badges to README.md.

Downloads:

  • AVR_Simulator.zip - Complete portable bundle (includes executable, sample hex/c code, and license)
  • AVR Simulator.exe - Standalone single-file Windows executable
  • Blink.hex & Blink.c - Sample test firmware