As to Puzznic, this is what its demo does when it's frozen
(should be switching between different startup screens instead):
---------------------
profile addresses
$070026 : bsr $70044 1.33% (1243359, 24867180, 0)
$07002a : btst #7,d0 1.33% (1243360, 14920320, 0)
$07002e : bne $70026 1.33% (1243360, 9946880, 0)
[...]
$070044 : move.w #$80,$ff8606 1.33% (1243359, 24867180, 0)
$07004c : bsr $70056 1.33% (1243359, 24867180, 0)
$070050 : andi.w #$ff,d0 1.33% (1243360, 9946880, 0)
$070054 : rts 1.33% (1243360, 19893760, 0)
$070056 : move.w #$40,d5 1.33% (1243359, 9946872, 0)
$07005a : dbra d5,$7005a 86.67% (80818374, 974793916, 0)
$07005e : move.w $ff8604,d0 1.33% (1243360, 24867200, 0)
$070064 : rts 1.33% (1243360, 19893760, 0)
---------------------