Releases: flxcraft/johnny
Releases · flxcraft/johnny
v1.2.0 - Visual Overhaul & UI Polish
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
Changes
- New icons in the simulator header
- New order of header elements
- New background image + new arrow design
- Fix
mc-optionscontainer overlapping
Full Changelog: v1.1.0...v1.2.0-beta.1
v1.1.0 – New Storage Architecture & Stability Update
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
.johnnyproject 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
productionchannel tostablefor 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
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
Changes
- New: Introduced
.johnnyproject files (full project export, much higher memory efficiency). - Refactor: Renamed
productionchannel tostable. - 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
scriptsdirectory for better organization.
Full Changelog: v1.0.0...v1.1.0-beta.1