Date: Wed, 27 Nov 2002 17:03:39 -0500 To: Willard Goosey From: Rodney V Hamilton Date: Wed, 27 Nov 2002 17:03:39 -0500 Subject: Re: IDE errata and fixes --------------------------------------------------------------- * Copy LSN0 stuff into drive table * Entry: X=ptr to 256 byte buffer containing LSN0 Sector. * Exit: X,D is destroyed CpyDrvTb pshs y Save path desc. ptr ldy PD.DTB,y Get drive table ptr from path desc pshs y save drive table ptr lda #DD.SIZ LSN0Cp ldb ,x+ stb ,y+ deca bne LSN0Cp * If the drive table's DD.TOT value is zero, OS9 reads no data! * This can happen if the LSN0 sector starts with three 00 bytes. * To fix, check for DD.TOT==0 and force nonzero value if so. puls x,y restore drive table & path desc ptrs ldd ,x does table DD.TOT==0? bne DrvTbOK orb 2,x bne DrvTbOK dec ,x yes, set msb to $FF DrvTbOK rts use ccide16.2.a ---------------------------------------------------------------