Skip to content

Fix queried settings persistence and recover failed RAM jobs - #92

Merged
boingball merged 8 commits into
mainfrom
fix/issue-91-prefs-ram-spooler
Sep 3, 2026
Merged

Fix queried settings persistence and recover failed RAM jobs#92
boingball merged 8 commits into
mainfrom
fix/issue-91-prefs-ram-spooler

Conversation

@boingball

@boingball boingball commented Sep 3, 2026

Copy link
Copy Markdown
Owner

Summary

Fixes the confirmed MintPrint Settings regression reported in #91 and makes failed RAM-spooled graphics jobs recoverable.

Query -> Save persistence

The AmigaOS 2.x compatibility change removed the V39-only GT_GetGadgetAttrs() reads from Save and correctly moved Cycle tracking to IDCMP_GADGETUP. However, Query Printer updates Cycle gadgets programmatically with GT_SetGadgetAttrs(), which does not emit GADGETUP. The window could therefore display valid defaults while Save wrote blank/stale MEDIA=, SOURCE=, COLOR=, QUALITY= or SCALING= values.

This change keeps the V37-compatible event model and explicitly synchronises each queried/programmatic selection with its persisted backing value. Existing saved choices are preserved when still supported; otherwise the exact visible safe default is saved.

RAM Spooler visibility and recovery

RAM/T: jobs now receive a status sidecar:

  • View Spooler scans T: when RAM is selected.
  • A live graphics job appears as RENDERING or SUBMITTING.
  • A failed rendered job and its status remain available for Retry, Copies or Delete.
  • Successful RAM jobs still remove both document and sidecar automatically unless Debug is enabled.
  • RAM continues using fixed per-engine filenames, so this is bounded recovery rather than an accumulating history.
  • HDD Keep Jobs behaviour is unchanged.

The driver revision moves from 41.16 to 41.17 so Settings can detect and offer the corrected driver.

Scope

This does not claim to fix the separate 36-page interrupted-transfer report without first identifying its logged failure code. Retaining the failed RAM document/status makes that case diagnosable and retryable instead of destroying the evidence.

Test plan

  • Fresh/blank Unit: Query Canon TS8360, Save without manually cycling Media/Colour/Scaling, confirm config contains the displayed values rather than blanks.
  • Existing Unit: Query again and confirm supported saved choices remain selected and persisted.
  • Unsupported/stale saved choice: Query and confirm the displayed fallback and saved value agree.
  • RAM successful job: observe RENDERING/SUBMITTING through Refresh; after success confirm document and sidecar disappear.
  • RAM failed job: confirm FAILED job remains, Retry/Copies work, and Delete releases it.
  • HDD + Keep on/off: confirm existing retained-job behaviour is unchanged.
  • Build both normal and classic drivers and MintPrintSettings with the m68k toolchain.
  • Run make check — GitHub Actions CI run #161 passed.

Fixes #91

@boingball
boingball merged commit c3299be into main Sep 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Wordworth documents not printing at all on Canon TS8360 using MintPrint 1.3.0 preferences.

1 participant