Commit Graph

5 Commits

Author SHA1 Message Date
Jose Luis Montañes
7409a96cf1 refactor: modularize into ES6 modules
Split monolithic index.html into:
- js/constants.js - gate config, colors, dimensions
- js/state.js     - shared application state
- js/gates.js     - evaluation logic, port geometry
- js/renderer.js  - canvas drawing
- js/waveform.js  - GTKWave-style signal viewer
- js/simulation.js - clock tick engine
- js/events.js    - mouse, keyboard, UI handlers
- js/app.js       - entry point
- css/style.css   - all styles
2026-03-19 22:00:02 +01:00
Jose Luis Montañes
6fbc6e4896 Add CLOCK gate with automatic simulation
- CLOCK gate auto-toggles 0→1→0 during simulation
- Run/Stop button in waveform toolbar
- Adjustable speed (50ms to 2000ms per tick)
- Click CLOCK to toggle manually when sim is stopped
- Waveform auto-opens when sim starts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 19:42:46 +01:00
Jose Luis Montañes
41f15c474b test: webhook auto-deploy 2026-03-19 19:37:42 +01:00
Jose Luis Montañes
a5ca5fdaa2 Add GTKWave-style waveform viewer
- Signal recording panel with per-gate waveforms
- Record/pause, step, zoom, clear controls
- Auto-scroll to latest signals
- Resizable panel with drag handle
- Color-coded signals matching gate types

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 19:35:05 +01:00
Jose Luis Montañes
1f95b1a97a Initial commit: logic gate simulator 2026-03-19 18:37:39 +01:00