Fuse fails a couple of the tests referenced there, and we have seen problems in the past where tape traps leaving wrong values in registers leads to software misbehaving ([bugs:#14], [patches:#41], [r2137]).
The failing tape trap tests from Woody suggests that in some cases IX, DE and AF can have unexpected values when tape traps are used.
The failed tests are:
Block 4
Saved data block:
IX = 0000, DE = 0020, A = FE
ROM loader parameters:
IX = 0000, DE = 0020, AF = FF01
ROM loader results:
IX = 00FF (expected 0000)
DE = FF21 (expected 0020)
AF = 0062 (expected 0100)
Block 5
Saved data block:
IX = FFFF, DE = 805D, A = 05
ROM loader parameters:
IX = 0000, DE = 0000, AF = FF01
ROM loader results:
IX = 0000
DE = 0000
AF = 0093 (expected FF82)
Strangely test 4 and 5 are successful to me. The failed test is:
A surprise to me too. I'm thinking that other options like Detect loaders or Auto-load media are selected? I was testing with 1.1.1 release with Tape Traps, Fast tape loading, Detect tape loaders on and Auto-load media and Accelerate tape loaders disabled. I used the 48k machine.
I wonder how much different selected tape loading options affect the results?
I started with the following: turned off all tape options and loaded tapetest.tap and all 6 blocks did load without reported errors.
Turned on loader detection and tried again, this time block 6 failed to load:
Last edit: Fredrick Meunier 2014-05-14
Ok, I see similar results:
My first test (block 2 failed) was with all tape options enabled.
All blocks load successfully with tape options disabled.
Block 6 fails with only loader detection.
I can't run any test with Tape Traps, Fastloading, Detect loaders on and Auto-load media and Accelerate loaders disabled.