Pulled 2026-06-01 from https://github.com/esaruoho/impulse-tracker and the local clone at /Users/esaruoho/work/impulse-tracker.
| # | Date | Title |
|---|---|---|
| #1 | 2024-06-17 | yep |
Authored on /Users/esaruoho/work/impulse-tracker. Some commits are squashed into the PRs above when they land upstream.
| Date | SHA | Message | ||
|---|---|---|---|---|
| 2026-06-01 | 84c7e1b | build.yml: guard 'ls IT.EXE it.exe' with \ | \ | true so bash -e does not abort before the driver count |
| 2026-06-01 | 3e49ca3 | gitattributes: renormalize ASM/INC blobs to valid UTF-8 (clears checkout encode errors) | ||
| 2026-06-01 | 1c4ca74 | CI: build.yml now uses TLINK 3.01 + gates on driver count; release zip forces CRLF | ||
| 2026-06-01 | 53fa15d | release.yml: pin version to v2.354, stamp with date (v2.354-YYYY-MM-DD) | ||
| 2026-06-01 | 87cc192 | release.yml: one-click auto-incrementing release button | ||
| 2026-05-29 | 7e3620a | Multitimbral MIDI-in (2/2): live any-screen routing of incoming notes | ||
| 2026-05-29 | 10c837b | Multitimbral MIDI-in (1/2): per-instrument MIDI-in channel + Shift-F4 batch-create 16 | ||
| 2026-05-20 | 5260c3d | SKILL.md: bump 1.1.0 -> 1.3.0 (Multi-WAV + Condition 11 + F12 pickers) | ||
| 2026-05-20 | 0a9fa2d | README: document Multi-WAV + Shift+Alt Condition 11 + F12 pickers + F10 WAV/MWAV | ||
| 2026-05-20 | 9fb5ac1 | Multi-WAV (Shift-Alt-M + F10 MWAV) + F10 WAV button + Shift+Alt keymap condition | ||
| 2026-05-20 | 4eee4f8 | F11 clone auto-insert, runtime status messages, F12 dir pickers, crash hunt | ||
| 2026-05-19 | 591523c | Items 3+8+10+11: full WAVDRV checks, PATLOG.TXT, IT.TXT fork docs, safe-build.sh | ||
| 2026-05-19 | f401e39 | Ctrl-O robustness: size= field, START log, 0-byte cleanup, 32K rotation, WAVDRV header-write check | ||
| 2026-05-19 | b72f541 | Ctrl-O: persistent CTRLOLOG.TXT in render dir, no more reading markers off CRT | ||
| 2026-05-19 | 4ae100e | Ctrl-O bad-WAV-header: null-terminate filename + per-check info-line msg | ||
| 2026-05-19 | 6e15aa7 | F11 clone/extend crash fix + README docs update | ||
| 2026-05-19 | 5ece809 | BACKLOG.md: deferred items moved to Implemented (068648f) | ||
| 2026-05-19 | 068648f | F2-F2 pattern length persists; M flag persists; both in IT.CFG ext block | ||
| 2026-05-19 | ecc745b | BACKLOG.md: living brainstorming surface for "what I want for this tracker" | ||
| 2026-05-19 | 90cfd04 | F11 cursor-key edge gestures + note-cut at row 0 in mute-wipe | ||
| 2026-05-19 | 1a7aa16 | F11 order list: render / clone / extend ops + mute-wipe toggle | ||
| 2026-05-19 | 18e8da4 | Ctrl-O diagnostics: per-check markers, dismissable hold, dispatcher trace | ||
| 2026-05-19 | a98a37c | Ctrl-O: Shift-Ctrl-O no-import, path validation, 15s marker hold | ||
| 2026-05-19 | 97712ce | Ctrl-O: render to Quicksave folder, fix import open-fail | ||
| 2026-05-19 | d8ec842 | IT_F.ASM: F12 Samples->Instruments preserves drawn envelopes | ||
| 2026-05-19 | 054f1f0 | .gitignore: ignore repo-root IT.CFG (kept locally for zip staging) | ||
| 2026-05-19 | f541198 | IT_DISK.ASM: Shift-Enter on module row = bulk-load all samples | ||
| 2026-05-18 | 06ac14a | README.md: musician-facing "What This Fork Lets You Do" section | ||
| 2026-05-18 | eaa34e2 | README.md: add 5-week changelog covering 2026-04-22 to 2026-05-18 | ||
| 2026-05-18 | f10e961 | IT_I.ASM: accept Shift-1..9 to save envelope presets (was Alt-only) | ||
| 2026-05-18 | 4e4eb9a | IT_F.ASM: default Sample->Instrument prompt to "No" to prevent envelope dataloss | ||
| 2026-05-18 | 731e168 | MIDI Transport toggle: independent FA/FB/FC gate alongside F8 Clock | ||
| 2026-05-18 | 16d89da | CLAUDE.md: document mixer & slave channel struct layout from MIX.INC | ||
| 2026-05-18 | e3e6940 | CLAUDE.md: add User-Facing Keyboard Reference section grounded in IT.TXT | ||
| 2026-05-18 | a44c41b | Music_SilenceSampleVoices: keep playback alive across sample (re)loads | ||
| 2026-05-13 | 2eb6088 | release.yml: default version 2.354 and overwrite existing release | ||
| 2026-05-13 | e4fafa6 | release.yml: simplify dispatch UI to a single version input | ||
| 2026-05-13 | 400ea5b | release.yml: fix .DRV.DRV double-extension when source is uppercase | ||
| 2026-05-13 | c599007 | release.yml: swap in TLINK 3.01 at runtime (toolchain ships 7.1) | ||
| 2026-05-13 | fe1df01 | release.yml: dump diagnostics + upload logs on driver-build failure | ||
| 2026-05-13 | 141893b | release.yml: handle lowercase .drv/.net from DOSBox-X on Linux | ||
| 2026-05-13 | 62e6991 | release.yml: replace heredoc with echo block (fix YAML indent) | ||
| 2026-05-13 | 8d80eff | Add release.yml — DOS-installable zip workflow | ||
| 2026-05-12 | 0afd402 | Add SKILL.md — architectural reference companion to CLAUDE.md | ||
| 2026-05-12 | aaada5e | Alt-R Replicate: tile row 0 when cursor is at row 0; Shift-Alt-R = ClearViews | ||
| 2026-05-12 | d506486 | Pattern editor: Alt-R = Replicate at Cursor (port of Paketti feature) | ||
| 2026-05-12 | 64fa1ce | F3 loader keyjazz hang fix: suppress MIDI sync playback during LoadSample | ||
| 2026-05-12 | ec91331 | F3 loader keyjazz hang: instrument LoadSample + PlaySample with VRAM markers | ||
| 2026-05-04 | 3537c0d | Ctrl-O hang: instrument WAV leave + import paths with VRAM markers | ||
| 2026-05-04 | 78fb72d | GUSMIXDR + IWDRV: stop filtering MIDI System Real-Time bytes (F8-FF) | ||
| 2026-05-04 | 4ebf849 | Sound drivers: stop filtering MIDI System Real-Time bytes (F8-FF) | ||
| 2026-05-04 | 95f628a | MIDI Monitor: show RT byte counters on Shift-F1 screen | ||
| 2026-05-04 | 7163709 | MIDI Sync: move toggle from Alt-F12 to Shift-F1 MIDI screen button | ||
| 2026-05-04 | 8ca7078 | F12 Module Directory: Enter opens F9 as a directory picker | ||
| 2026-05-04 | 8f11aa6 | Quickfix: translate '/' to '\' in F12 directory input fields | ||
| 2026-05-04 | ad5d840 | MIDI Sync: default ON + Alt-F12 hotkey toggle | ||
| 2026-05-04 | 2051b90 | README: document v2.354 fork additions (MIDI sync, P3 render, quicksave, build infra) | ||
| 2026-05-04 | 7df9edf | Bump to v2.354; add Esa Juhani Ruoho 2026 copyright | ||
| 2026-05-04 | 34b725d | .gitignore: ignore CACHE.ITS and rendered 004_*.001 sample dumps | ||
| 2026-05-01 | 7fd1abc | F12 config screen: add Quicksave directory input row | ||
| 2026-05-01 | 6464e15 | Quick-save folder: Alt-W saves to it, Shift-Alt-W memorizes | ||
| 2026-05-01 | 0c02662 | P3: warn user + adjust length when sample exceeds 1MB safety cap | ||
| 2026-05-01 | d13a849 | P3: loop-on-render configurable + alloc-fail clears the dirty slot | ||
| 2026-05-01 | 81c78aa | P3: populate IMPS filename field (+4..+15) with the rendered .NNN | ||
| 2026-05-01 | fc92c77 | gitattributes: lock .ASM/.INC encoding to ISO-8859-1 + CRLF | ||
| 2026-05-01 | 0a82cb3 | MIDI Clock sync: enable flag (default off) + delta sanity check | ||
| 2026-05-01 | 672273b | F4->F3 translate: bounds + note-60-first then scan-all fallback | ||
| 2026-05-01 | 9bd18d1 | P3 hardening: cwd reentrancy gate + 4-digit counter + WAV validation | ||
| 2026-05-01 | 9d626b0 | F4 -> F3 cursor translation (Feature 2) | ||
| 2026-05-01 | 03b0a6d | MIDI Clock 0xF8 external tempo sync (Feature 4) | ||
| 2026-05-01 | ce3fb79 | P3: render to user's SampleDirectory + loop the imported sample | ||
| 2026-05-01 | b0690a4 | P3: target slot = max(highest sample, highest instrument) + 1 | ||
| 2026-05-01 | f136a7b | P3: page counter in memory + AssignSampleToInstrument off-by-one | ||
| 2026-05-01 | e3f5815 | P3 select-fix: use LastInstrument (F3/F4 cursor), not just CurrentSample | ||
| 2026-05-01 | 3a626b4 | P3: auto-select imported sample, instrument-mode-gated instrument | ||
| 2026-05-01 | 4d5e9da | P3: don't clobber WAV_PendingPattern on leave-mode entry | ||
| 2026-05-01 | 64b853b | P3 filename fix: put '.' at index 6 of WAV_RenderBasename | ||
| 2026-05-01 | 9ed42ed | P3: bump import status messages to 500 ticks (~15-30 seconds) | ||
| 2026-05-01 | bb5e5ea | P3: unique render filename REN<NNN>.<PPP> (no overwrites) | ||
| 2026-05-01 | 09d7e7d | P3 diagnostics: granular failure messages per import step | ||
| 2026-05-01 | 1d7910e | P3 fixes: single-press flow + the actual PCM-read bug | ||
| 2026-05-01 | 1b2bcf1 | SoundDrivers: skip-stub 13 BATs needing TASM32 or missing sources | ||
| 2026-05-01 | af03f96 | IT_MUSIC.ASM: P2.5 + P3 — Ctrl-O auto-imports rendered pattern | ||
| 2026-05-01 | 089119a | IT_MUSIC.ASM, IT_PE.ASM: P2a — Ctrl-O toggles ITWAV.DRV render mode | ||
| 2026-04-30 | e4c9b4a | docs: deep-dive findings for P2/P3 pattern-to-sample | ||
| 2026-04-30 | 35732c3 | IT_PE.ASM: Ctrl-O renders current pattern (phase 1 of pattern-to-sample) | ||
| 2026-04-30 | be79b3c | build: TLINK 3.01 unlocks full IT.EXE + 42 drivers + ITIPX.NET | ||
| 2026-04-30 | 5bd73ed | docs+build: CLAUDE.md, BUILDALL.BAT, sample DOSBox-X config | ||
| 2026-04-23 | 1fa031c | ci: add GitHub Actions workflow to build IT.EXE via DOSBox-X + TASM | ||
| 2026-04-23 | ec42bd1 | IT_K.ASM: start/stop song on MIDI System Real-Time messages | ||
| 2026-04-22 | aa311f5 | Ignore macOS .DS_Store files | ||
| 2024-06-17 | c679180 | Update SERVER.C | ||
| 2024-06-17 | bda9b52 | Update VMM.INC | ||
| 2024-06-17 | e7bfcbd | Update IT.TXT | ||
| 2024-06-17 | c24a5b0 | Update MIDI.TXT | ||
| 2024-06-17 | 8306d8a | Update NETWORK.TXT | ||
| 2024-06-17 | ad1f7be | Update SUMMARY.TXT | ||
| 2024-06-17 | 8ca4a37 | Update ITTECH.TXT | ||
| 2024-06-17 | 30a4a31 | Update BUGS.TXT | ||
| 2024-06-17 | 3e20876 | Update UPDATE.TXT | ||
| 2024-06-17 | 1703757 | Update FILTERS.TXT | ||
| 2024-06-17 | 40949c4 | Update IMPULSE.FAQ | ||
| 2024-06-17 | 6346713 | Update HINTS.TXT | ||
| 2024-06-17 | eb81f5f | Update IPX.ASM | ||
| 2024-06-17 | 48f9243 | Update SB16D.ASM | ||
| 2024-06-17 | 468688c | Update M16.ASM | ||
| 2024-06-17 | cc583e1 | Update ST97.ASM | ||
| 2024-06-17 | 32f7725 | Update WAVPRO.ASM | ||
| 2024-06-17 | 59423ef | Update PAS16DRV.ASM | ||
| 2024-06-17 | b4f016f | Update SB16MMXB.ASM | ||
| 2024-06-17 | 3301167 | Update GUSMAXMX.ASM | ||
| 2024-06-17 | ca8b34f | Update GUSMIXDR.ASM | ||
| 2024-06-17 | b906bef | Update EWSCODMX.ASM | ||
| 2024-06-17 | d9b9447 | Update GUSPNPM.ASM | ||
| 2024-06-17 | f6e03b6 | Update VSNDMMX.ASM | ||
| 2024-06-17 | c5334a0 | Update WSSDRV.ASM | ||
| 2024-06-17 | d8a77b1 | Update GOLD16.ASM | ||
| 2024-06-17 | 9bdcad3 | Update CHANNEL.TXT | ||
| 2024-06-17 | 9088521 | Update MMTECH.TXT | ||
| 2024-06-17 | 167ef80 | Update CONFIG.TXT | ||
| 2024-06-17 | 6c81b93 | Update IT_MMTSR.ASM | ||
| 2024-06-17 | 25ec4b5 | Update IT_OBJ1.ASM | ||
| 2024-06-17 | 05fcd6b | inital->initial | ||
| 2024-06-17 | d851b3d | Update IT_I.ASM | ||
| 2024-06-17 | 9e7b6d2 | Update IT_TUTE.ASM | ||
| 2024-06-17 | a20bca3 | Update IT_D_RM.INC | ||
| 2024-06-17 | aba20b8 | Update IT_H.ASM | ||
| 2024-06-17 | ae3a6b9 | Update IT_PE.ASM | ||
| 2024-06-17 | fc8b05e | Update IT_D_WM.INC | ||
| 2024-06-17 | f93b20f | extention -> extension | ||
| 2024-06-17 | 59ea08c | reenable -> re-enable | ||
| 2024-06-17 | 1428fc4 | hilight -> highlight | ||
| 2024-06-17 | 1161fb3 | minor typo fixes |