Skip to content

Releases: flxcraft/johnny

v1.2.0 - Visual Overhaul & UI Polish

13 Apr 14:23

Choose a tag to compare

This release focuses on a complete modernization of the user interface. With a brand-new icon set, a redesigned bus architecture, and improved layout structures, the simulator is now more intuitive and visually engaging for classroom use.

🎨 Visual Redesign

  • New Background System: Migrated to high-performance WebP graphics with a completely redesigned arrows for both the Address and Data Bus.
  • Modernized Icon Set: Introduced new, consistent icons for RAM control, the Control Unit (CU), microcode management, and execution controls.
  • Bus Adjustments: The Address Bus length is now precisely aligned with the Control Unit.
  • Design Consistency: Unified border-radius settings across various elements, including the RAM input arrow and the Control Unit cover, for a cohesive look.

🏗️ UI & Workflow Enhancements

  • Header Restructuring: Reorganized the header elements into logical groups for a more streamlined workflow.
  • Integrated Project Management: Combined the Settings, Project Upload, and Download buttons into a new "Simulator Options" container.
  • Vertical Input Stacking: Macro recording inputs are now stacked vertically to save space and improve clarity on smaller screens.
  • Layout Optimization: Adjusted spacing for CU toggles and repositioned the microcode options (mc-options) to prevent container overlapping.

⚙️ New Features & Settings

  • Microcode Counter Toggle: Added a new setting to hide the Microcode Counter (requires reload), allowing users to simplify the interface.

🐛 Bug Fixes & Maintenance

  • Layout Fixes: Resolved several issues regarding overlapping arrows and misaligned UI containers.
  • Code Cleanup: Removed deprecated CSS classes (e.g., blackborder) and optimized graphical assets.
  • Deployment Optimization: Excluded source design files (Inkscape files) from GitHub Pages builds to reduce the overall deployment size.

Full Changelog: v1.1.0...v1.2.0

v1.2.0-beta.1 - New UI design

12 Apr 10:46

Choose a tag to compare

Pre-release

Changes

  • New icons in the simulator header
  • New order of header elements
  • New background image + new arrow design
  • Fix mc-options container overlapping

Full Changelog: v1.1.0...v1.2.0-beta.1

v1.1.0 – New Storage Architecture & Stability Update

09 Apr 14:46

Choose a tag to compare

This release introduces a major overhaul of the data management system, improved project portability, and several quality-of-life enhancements.

🚀 New Features

  • New Project Format: Introduced .johnny project files. Users can now export and import full projects with significantly higher memory efficiency.
  • Enhanced Settings:
    • autoScrollMicroCode: The microcode table now automatically follows the execution flow.
    • ramAutoScroll: The RAM table automatically scrolls to the active instruction.
    • fixRamAfterShift: Disable automatic ram fix after inserting or deleting rows.
  • Channel Rename: Renamed the production channel to stable for better clarity in the versioning scheme.

🛠 Improvements & Refactoring

  • Storage Architecture: Full migration to the new JohnnyProject class, centralizing data handling and state management.
  • Optimization: Improved JSON export efficiency by removing trailing zeros, resulting in smaller file sizes.
  • Standardization: Unified localStorage naming conventions and key syntax for a cleaner browser data footprint.
  • Project Structure: Restructured the scripts directory and moved classes into dedicated folders to improve maintainability.
  • Documentation: Added class descriptions and expanded inline comments across the codebase (specifically for the control unit and RAM logic).

🐛 Bug Fixes

  • CORS Resolution: Switched version loading to a JS-based approach to prevent CORS errors when running the simulator from local ZIP builds.
  • UI & Tables:
    • Fixed a bug where the selection arrow remained visible for hidden rows in the RAM table.
    • Resolved an issue where microcode highlighting would not reset properly.
    • Adjusted scroll offsets for both RAM and Microcode tables for better visibility.
  • Recording:
    • Fixed "Address Out of Bounds" errors during macro recording.
    • Resolved a UI conflict where manual scrolling in the MC table interfered with the recording process.

Full Changelog: v1.0.0...v1.1.0

v1.1.0-beta.2 - Small enhancements

08 Mar 21:19

Choose a tag to compare

Pre-release

Changes

  • Standardize local storage names
  • Add some missing comments
  • Fix scrolling behavior in tables
  • Add RAM scroll setting
  • Fix recording address out of bounds

Full Changelog: v1.1.0-beta.1...v1.1.0-beta.2

v1.1.0-beta.1 - New Storage Architecture

26 Feb 22:30

Choose a tag to compare

Changes

  • New: Introduced .johnny project files (full project export, much higher memory efficiency).
  • Refactor: Renamed production channel to stable.
  • Fix: Resolved CORS errors on ZIP versions by switching version loading to JS.
  • UI: New settings available in the modal (fixRamAfterShift, autoScrollMicroCode).
  • Fix: Microcode table highlighting now resets properly.
  • Maintenance: Restructured scripts directory for better organization.

Full Changelog: v1.0.0...v1.1.0-beta.1

v1.0.0 - Initial Release

23 Feb 20:24

Choose a tag to compare