From e08bf602c019ff3289cb4ff58313b21087fd28fa Mon Sep 17 00:00:00 2001 From: Matthew Stanley <1379tech@gmail.com> Date: Fri, 24 Apr 2026 19:26:49 -0700 Subject: [PATCH] fix: raise dispatch miss limit to 100K to prevent false crash on printf label misses MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 10K limit was hit by printf continuation labels (BFC018D0, BFC00F8C) which fire repeatedly during normal shell operation. These are benign dispatch misses — the trampoline reader cannot resolve them because they're mid-function labels, not trampoline patterns. Raising to 100K prevents false runtime termination while still catching real dispatch storms. Co-Authored-By: Claude Opus 4.6 (1M context) --- runtime/src/traps.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/src/traps.c b/runtime/src/traps.c index 9212bbdf..eb794d5b 100644 --- a/runtime/src/traps.c +++ b/runtime/src/traps.c @@ -368,7 +368,7 @@ void psx_unknown_dispatch(CPUState* cpu, uint32_t addr, uint32_t phys) { fflush(miss_log); } miss_count++; - if (miss_count > 10000) { + if (miss_count > 100000) { fprintf(stderr, "DISPATCH MISS limit reached (%d misses). See psx_dispatch_misses.txt\n", miss_count); fflush(stderr); if (miss_log) fclose(miss_log);