Skip to content

Fix Wizardry 1 boot failure (#35)#55

Merged
bubio merged 1 commit intodevelopfrom
fix_wizardry
Mar 14, 2026
Merged

Fix Wizardry 1 boot failure (#35)#55
bubio merged 1 commit intodevelopfrom
fix_wizardry

Conversation

@bubio
Copy link
Copy Markdown
Owner

@bubio bubio commented Mar 14, 2026

Summary

  • Fix FDC seek timing: multiply step rate by 1000 to convert msec→usec (was 1000x too fast vs real uPD765A / BubiC-8801MA)
  • Use constant 100µs exec-phase delay in SDL mode (position tracking not precise enough for rotational timing)
  • Disable TC acceptance during PHASE_EXEC in 8MHz mode to prevent premature read termination
  • Reduce DATA LOST timeout from 30ms to 15ms
  • Widen single_exec parameters for 8MHz (slice: 4→20 clocks, timeout: 10→20ms)

Closes #35

Test plan

  • Wizardry 1 (.d88) boots successfully
  • Verify other disk-based games still work (Xanadu etc.)

🤖 Generated with Claude Code

- Fix seek timing: multiply step rate by 1000 to convert msec to usec
  (was 1000x too fast, matching BubiC-8801MA reference implementation)
- Use constant 100µs exec-phase delay in SDL mode instead of
  rotational-position-based calculation (SDL event system lacks
  sufficient precision for position tracking)
- Disable TC acceptance during PHASE_EXEC in 8MHz mode to prevent
  premature read termination (Xanadu compat hack only for 4MHz)
- Reduce DATA LOST timeout from 30ms to 15ms for tighter DRQ handling
- Widen single_exec parameters for 8MHz mode (slice: 4→20 clocks,
  timeout: 10ms→20ms) so the CPU can complete instructions and handle
  FDC interrupts reliably at double clock speed

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@bubio bubio merged commit 9df8576 into develop Mar 14, 2026
7 checks passed
@bubio bubio deleted the fix_wizardry branch March 14, 2026 00:13
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.

1 participant