Zz9000 P96 driver Mu Hit with DISPLAYCHAIN=NO

  • Amiga model: A4000T
  • 680x0 CPU: 060/ppc
  • RAM Configuration: 16MB on board +128MB CYBPPC +256MB on ZZ9000
  • Kickstart, AmigaOS Versions: 3.2.1 (but happens on previous OS as well)
  • ZZ9000 Firmware version: 1.10
  • ZZ9000 Driver version: version that comes with 1.10
  • Monitor model: Dell SR2320L
  • Other Zorro cards:
    Video Toaster
    Icomp X-surf and RapidRoad
    CyberVisionPPC Card with CyberStormPPC/060 Accelerator from Phase5

Hit happens when DISPLAYCHAIN=NO, with DISPLAYCHAIN=YES there is no hit.

01-Apr-22 20:33:51
WORD READ from 00000012 PC: 08BC60A0
USP : 08B7E61C SR: 0014 (U0)(-)(-) TCB: 08B72608
Data: 00000000 ABADF00D 00000001 48000000 00000000 00000000 00000005 00000028
Addr: 08BC7074 00000000 08BC34F0 08BB12F8 08BB135C 08BC7074 08000944 080023B0
Stck: 00000001 00000000 08BC615A 00000000 08BAFF6E 08B761EE 00000000 00000001
Stck: 00000000 00000000 00000014 08B4C3FD 08BC25A8 08B761B0 08B4C3FD 08B7EA44
Stck: 08B2A96A 000408BC 711208BC 29B008BC 303C088B 2ED0BB32 08BC366A 00000000
Stck: 08B7EA44 00000000 08BC7A94 0000C3FD 08BC8134 00000000 08BC371D 08B7602C
Stck: 8000415C 08BC34F0 00000000 00008000 08B752B8 00000000 00000014 00000000
Stck: 08025F20 08B4C3FD 00000000 08000944 00000000 00000000 08B75E88 00008000
Stck: 00000001 08B75DEC 08B75DEC 08B7E6F8 00F9A754 00F9A748 00F9AFE6 00008000
Stck: 08B734BC DDDDDDDD DDDDDDDD DDDDDDDD DDDDDDDD DDDDDDDD DDDDDDDD DDDDDDDD
Stck: DDDDDDDD 08B7E810 08BB1040 54484F52 4D554741 000033E4 08B7D47C 08B7E798
Stck: 00000051 0889636E 00000000 00000000 00010001 00000001 8172616D 6C696200
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 81818181
Stck: 81818181 81818181 81818181 81818181 81818181 81818181 81818181 00000051
Stck: 08B7564C 08BB4914 08B7E7C1 08B7EFE4 00032038 08BB10BC 000037BC 00000000
Stck: 00000000 00576F72 6B62656E 6368332E 323A4C69 62732F50 69636173 736F3936
Stck: 2F727467 2E6C6962 72617279 00818181 81818181 81818181 81818181 81818181
Stck: 81818181 81818181 81818181 81000000 00000000 08BB5028 08B7E720 54484F52
Stck: 4D554741 000033E4 08B7DB6C 08B7E888 000005CC 00F81D4E 00000000 00000000
Stck: 00010001 00000000 8372616D 6C696200 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 83838383 83838383 83838383 83838383 83838383
Stck: 83838383 83838383 83838383 4EF908BA 4DFC4EF9 08BA4DC2 4EF908BB 09024EF9
Stck: 08BB0902 4EF908BB 09024EF9 08BB0902 4EF908BB 09024EF9 08BB0902 4EF908BB
Stck: 09024EF9 08BB0902 4EF908BB 09024EF9 08BB0902 4EF908BB 09024EF9 08BB0902
Stck: 4EF908BB 09024EF9 08BB0902 4EF908BB 09024EF9 08BB0902 4EF908BB 09024EF9
Stck: 08BB0902 4EF908BB 09024EF9 08BB0906 4EF908B7 FBA84EF9 08B7FA40 4EF908B7
Stck: F8C44EF9 08BAD9FA 4EF908BA D8EC4EF9 08BA4A48 4EF908BA 49F84EF9 08BA49C2
Stck: 4EF908BA 27024EF9 08BA29BE 4EF908BA 28B24EF9 08BA496C 4EF908BA 493A4EF9
Stck: 08BA48F4 4EF908BA DF0C4EF9 08BAC694 4EF908BA C75C4EF9 08BABF4A 4EF908BA
Stck: DE2E4EF9 08BADF76 4EF908BA DCA44EF9 08BAEFDC 4EF908BA E9384EF9 08BB0C56
Stck: 4EF908BB 0DC04EF9 08BB0D5C 4EF908B8 D6D84EF9 08B8D674 4EF908BA 61124EF9
Stck: 08BB0CE8 4EF908BA AB5C4EF9 08BADB78 4EF908BA DB4C4EF9 08BA979C 4EF908BA
Stck: 95F64EF9 08BA94FC 4EF908BB 0BD84EF9 08BB0B10 4EF908BB 0B744EF9 08BA4E98
Stck: 4EF908BA 4F224EF9 08BA4E74 4EF908BA 4E2E4EF9 08BB0902 4EF908BB 09024EF9
Stck: 08BB0902 4EF908BA 532C4EF9 08BAF8AC 4EF908BB 09024EF9 08BB0902 4EF908BB
Stck: 08E64EF9 08BB08D8 08027938 08BC24CC 09BA08BB 03400400 01BC0410 002A04CA
Stck: 08B7F058 6CBD0000 00010000 08000944 08025DD8 08014330 08888204 08BB4B08
Stck: 08000250 022DFBF9 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 0F000000 00000000
Stck: 08B7EAC0 00000000 08B7EABC 08B7EACC 00000000 08B7EAC8 00000000 FFFF8080
Stck: 08BB090C 08BB093C 08BB096C 08BB099C 08BB09CC 08BB09FC 08BB0A2C 08BB0A5C
Stck: 08BB0A8C 08BB0AB8 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 08BB7A80 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 08018D04 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 00000000 00000000 00000000 08BB68A0 00080310
Stck: 08896A14 08BBC028 00004000 00000000 00000000 0F000000 00000000 08B7ED9C
Stck: 00000000 08B7ED98 00000000 00000000 00000000 00000000 FFFF0801 8F840802
Stck: 6E200801 8D400F00 08BB0416 000008B7 EDCE0000 000008B7 EDCA0000 00000000
Stck: 00000000 00000000 0000FFFF 00000000 00000000 00000000 00000000 00000000
Stck: 00000000 00000000 00000000 0000FFFF 00000000 00000000 0F000000 00000000
----> 08BC60A0 - “Workbench3.2:Libs/Picasso96/ZZ9000.card” Hunk 0000 Offset 00000770
----> 08BC615A - “Workbench3.2:Libs/Picasso96/ZZ9000.card” Hunk 0000 Offset 0000082A
----> 08BAFF6E - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00030F86
----> 08B761EE - “Workbench3.2:Devs/Monitors/ZZ9000” Hunk 0001 Offset 0000003E
----> 08B761B0 - “Workbench3.2:Devs/Monitors/ZZ9000” Hunk 0001 Offset 00000000
----> 08B2A96A - “Workbench3.2:C/MuGuardianAngel” Hunk 0000 Offset 00002172
----> 08B7602C - “Workbench3.2:Devs/Monitors/ZZ9000” Hunk 0000 Offset 0000023C
----> 08B75E88 - “Workbench3.2:Devs/Monitors/ZZ9000” Hunk 0000 Offset 00000098
----> 00F9A754 - “ROM - dos 47.30 (2.12.2021)” Hunk 0000 Offset 00000244
----> 00F9A748 - “ROM - dos 47.30 (2.12.2021)” Hunk 0000 Offset 00000238
----> 00F9AFE6 - “ROM - dos 47.30 (2.12.2021)” Hunk 0000 Offset 00000AD6
----> 00F81D4E - “ROM - exec 47.8 (27.10.2021)” Hunk 0000 Offset 00001D0C
----> 08BA4DFC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025E14
----> 08BA4DC2 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025DDA
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0906 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191E
----> 08B7FBA8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00000BC0
----> 08B7FA40 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00000A58
----> 08B7F8C4 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000008DC
----> 08BAD9FA - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EA12
----> 08BAD8EC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002E904
----> 08BA4A48 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025A60
----> 08BA49F8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025A10
----> 08BA49C2 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000259DA
----> 08BA2702 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002371A
----> 08BA29BE - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000239D6
----> 08BA28B2 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000238CA
----> 08BA496C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025984
----> 08BA493A - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025952
----> 08BA48F4 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002590C
----> 08BADF0C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EF24
----> 08BAC694 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002D6AC
----> 08BAC75C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002D774
----> 08BABF4A - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002CF62
----> 08BADE2E - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EE46
----> 08BADF76 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EF8E
----> 08BADCA4 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002ECBC
----> 08BAEFDC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002FFF4
----> 08BAE938 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002F950
----> 08BB0C56 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031C6E
----> 08BB0DC0 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031DD8
----> 08BB0D5C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031D74
----> 08B8D6D8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0000E6F0
----> 08B8D674 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0000E68C
----> 08BA6112 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002712A
----> 08BB0CE8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031D00
----> 08BAAB5C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002BB74
----> 08BADB78 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EB90
----> 08BADB4C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002EB64
----> 08BA979C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002A7B4
----> 08BA95F6 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002A60E
----> 08BA94FC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0002A514
----> 08BB0BD8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031BF0
----> 08BB0B10 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031B28
----> 08BB0B74 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031B8C
----> 08BA4E98 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025EB0
----> 08BA4F22 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025F3A
----> 08BA4E74 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025E8C
----> 08BA4E2E - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00025E46
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BA532C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00026344
----> 08BAF8AC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000308C4
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB0902 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003191A
----> 08BB08E6 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000318FE
----> 08BB08D8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000318F0
----> 08BB0340 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031358
----> 08B7F058 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00000070
----> 08BB090C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031924
----> 08BB093C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031954
----> 08BB096C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031984
----> 08BB099C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000319B4
----> 08BB09CC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 000319E4
----> 08BB09FC - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031A14
----> 08BB0A2C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031A44
----> 08BB0A5C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031A74
----> 08BB0A8C - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031AA4
----> 08BB0AB8 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 00031AD0
----> 08BB0416 - “Workbench3.2:Libs/Picasso96/rtg.library” Hunk 0000 Offset 0003142E
PC-8: 740CE568 80438041 33400002 241F261F 4E752F03 2F022610 2149022E 3140023C
PC *: 30290012 0C40013F 63503229 00140C41 00C76346 20680232 34308BB0 08BC3254
08bc6080 : 740c moveq.l #$c,d2
08bc6082 : e568 lsl.w d2,d0
08bc6084 : 8043 or.w d3,d0
08bc6086 : 8041 or.w d1,d0
08bc6088 : 3340 0002 move.w d0,$2(a1)
08bc608c : 241f move.l (a7)+,d2
08bc608e : 261f move.l (a7)+,d3
08bc6090 : 4e75 rts
08bc6092 : 2f03 move.l d3,-(a7)
08bc6094 : 2f02 move.l d2,-(a7)
08bc6096 : 2610 move.l (a0),d3
08bc6098 : 2149 022e move.l a1,$22e(a0)
08bc609c : 3140 023c move.w d0,$23c(a0)
08bc60a0 : 3029 0012 move.w $12(a1),d0
08bc60a4 : 0c40 013f cmpi.w #$13f,d0
08bc60a8 : 6350 bls.s $8bc60fa
08bc60aa : 3229 0014 move.w $14(a1),d1
08bc60ae : 0c41 00c7 cmpi.w #$c7,d1
08bc60b2 : 6346 bls.s $8bc60fa
08bc60b4 : 2068 0232 movea.l $232(a0),a0
08bc60b8 : 3430 8bb0 08bc 3254 move.w ($8bc3254,za0,a0.l
2),d2 ;extended opcode
Name: “Background CLI” CLI: “ZZ9000”

I have rechecked this on 1.13 of the FW/drivers as well as with latest P96 3.4.1 and still get the same issue. From the IRC chat with Chain|Q:
https://mntre.com/amiga-irc-logs/2022-04-02.log.html

“based on the hit, and the offset, I think SetGC() is called with NULL ModeInfo in this case, so when the driver tries to read mode_info->Width, it hits. (0x12 offset is Width in the ModeInfo struct, and that’s the first read there, also A1 is NULL in your hit regdump) Now, in turn SetSwitch() (gonna assume only called with DISPLAYCHAIN=NO) in the driver calls SetGC(), with b->ModeInfo as. argument, but in turn SetGC() b->ModeInfo is set inside SetGC() first… So if that’s some first “init” call, and SetSwitch is called first, ModeInfo could be NULL there, and there’s your hit. this is entirely just by reading the code, but I’m pretty confident something like this happens.”

Based on above would this be able to get fixed?