分享公司内部开源代码1

时间:2021-03-24 23:13:53

;;;///// CHECK & SETTING
WAITSTARTUP
REG
SET SAVETST ON
CHECKTST B/F P/A                          //rebecca
E2W ADDR(0x3E7,0xFF)  //2006 06 23     
E2W ADDR(0x3F7,0xFF)  //2006 06 23
D2F
CPKMODEL SSM85H5S
;E2SAVEMODEL SSM85H5S                     
                   
CHECKMODEL STR(LENOVO USB_MultiBurner3 )
CHECKFWV STR(NL31  )           //rebecca

WRITERID STR(0000)
CHECKRID STR(0000)

;CHECKMASTER SLIM

  ;;;//////// RESTOR RPC

  E2W ADDR(0X70,0)
  E2W ADDR(0X71,4)
  E2W ADDR(0X72,5)
  E2W ADDR(0X73,0XFF)
  E2W ADDR(0X74,0XFF)
  E2W ADDR(0X75,0X99)
  E2W ADDR(0X76,0X0F)
  E2W ADDR(0X77,0X0F)
  d2f
 //  CHECKRPC
atapi(df,09,0,0,0,0,0,0,0,0,0,0)  //ok
assign r[0x8000]=0x00
assign r[0x8001]=0x04
assign r[0x8002]=0x05
assign r[0x8003]=0xff
assign r[0x8004]=0xff
assign r[0x8005]=0x99
cmprr addr1(0x70) addr2(0x8000) len(6)

//.. check "Master"  only for E2prom [0x7c]=0x08
//.. check "Slave"  only for E2prom [0x7c]=0x09
//.. check "CS"  only for E2prom [0x7c]=0x00

  atapi(df,8a,0,0,0,0,0,0,0x7c,0,0,0)
  atapi(df,89,0,0,0,0,0,0,0x7c,0,ee,fa)
  assign V1=R[0]
  assign r[0x8000]=V1
  assign r[0x8001]=0x00 // m,s,c
  cmprr addr1(0x8000) addr2(0x8001) len(1)

SET RETRY 0
SET MAXSEEKTIME 3000
SET TIMEOUT 7.4

atapi(df,0a,0,0,0,0,0,0x01,0xB0,0x01,0,0) // LS parameter

////  Check AUTO TRAYOUT Issue CB LI 0328
atapi(df,8a,0,0,0,0,0,01,d5,03,0,0)
atapi(df,8a,0,0,0,0,0,01,d6,06,0,0)
d2f
WAITSTARTUP

reg


;;;///// PUT DVD5 DISC
SET DVD
SET PIO 4
TRAYOUT MAX(4) MIN(0)  ;;CB 0103
atapi(df,00,12,01,0,1e,0,0,0,0,0,0)    // XY shift  add. DVD X-Y shift
wait DVD5BETA disc
;; DVD5 Beta
delay 2  //Eric 2005 10 27
  TESTUNIT 30

atapi(df,00,12,02,0,00,0,0,0,0,0,0)      //add. disable DVD X-Y shift
set dvd
set timeout 50
set clvspeed(2,2)

read10 lbas(0x10000) //v16
delay 1
ATAPI(DF,0E,0,01,0,00,00,0x42,0,0,0,0)  // v16
set timeout 7.4
e2r addr(0x13d)  ;display Beta-comp Value
e2r addr(0x13e)
 
SPINDOWN MAX(4.5)
STARTUP MAX(25) MIN(1) SLIM AUX
atapi(df,14,18,0,0,0,0,0,0,0,0,0)      // disable smart function
atapi(df,14,00,02,01,0,0,0,0,0,0,0)    //disable unbalance

RANDREAD PASS(20) CHKSUM
SEQREAD LBAS(0) LBAE(10000) CHKSUM

SET DMA S2
DELAY 2
TXRATE LBAS(0) MIN(4300) MAX(5400) BLK(32) COUNT(50)

SET PIO 4
SEQREAD LBAS(0X217000) LBAE(0X217FFF) CHKSUM
;// Test PIPO
SET retry 2
READC1C2 LBAS(0x218000) MAX(40) MAX2(5) AVG

SET DMA S2
DELAY 3
SET RETRY 2
atapi(28,08,00,22,7f,ff,0,0,1,0,0,0)
 // clear cash buffer to avoid seek time
TXRATE   LBAS(0x228000) MIN(10150) MAX(13000)  BLK(32) COUNT(100)

SET PIO 4
SET RETRY 0
RANDACC PASS(100)      
FULLACC  PASS(20) LBAS(0) LBAE(0X22F000)

SPINDOWN MAX(5) MIN(1)
SPINUP   MAX(4.5) MIN(0.5)

;; DVD+R : PUT DISC *******
;set dvd
;trayout
SET TIMEOUT 15

;wait DVD+R disc
delay 2  //Eric 2005 10 27
testunit 35
;atapi(df,0,12,2,0,0,0,0,0,0,0,0)     ;;;///XY shift
SET YIELD ON
SET TIMEOUT 35
;; Alpha Cal DVD
ALPHA AUX
SET TIMEOUT 7.4
ATAPI(DF,0,29,0,0,0,0,0,0,0,0,0)
testunit 35

;; CD : PUT DISC *******
set cdrom
trayout
atapi(df,00,12,01,0,28,0,0,0,0,0,0)    // XY shift
 
wait CD5-4 Disc
delay 2  //Eric 2005 10 27
  TESTUNIT 30
 
atapi(df,00,12,02,0,00,0,0,0,0,0,0)   
atapi(df,14,00,02,01,0,0,0,0,0,0,0)    //disable unbalance

SET TIMEOUT 50
;; Alpha Cal CD
ALPHA AUX
SET TIMEOUT 7.4
ATAPI(DF,0,29,0,0,0,0,0,0,0,0,0)
testunit 30

SPINDOWN MAX(4.5)
STARTUP MAX(20) MIN(1) SLIM AUX

atapi(df,14,18,0,0,0,0,0,0,0,0,0) // disable smart function
RANDREAD PASS(10) CHKSUM
SEQREAD  MSFS(0:2:0) MSFE(1:10:0) CHKSUM
;;///// CD-ID Spec: 10.5~11X

SET DMA S2
DELAY 3
TXRATE   MSFS(00:02:00) MIN(1450) MAX(1950)
SET PIO(4)
;READC1C2 MSFS(00:02:00) MAX(250) MAX2(0)
SEQREAD MSFS(72:45:0) MSFE(72:59:74) CHKSUM
 ;;///// CD-OD Spec: 24~26X
SET RETRY 2
READC1C2 MSFS(73:0:0) MAX(250) MAX2(0)

SET DMA S2
DELAY 3
SET RETRY 2
atapi(28,08,00,05,02,9E,0,0,1,0,0,0)
 // clear cash buffer to avoid seek time
TXRATE   MSFS(73:00:00) MIN(3550) MAX(4200)

SET PIO 4
SET RETRY 0
RANDREAD PASS(20) CHKSUM
RANDACC PASS(20)  
FULLACC  PASS(20) MSFS(00:02:00) MSFE(73:00:00)

SET TIMEOUT 8
SPINDOWN MAX(4.5) MIN(0.5)
SPINUP   MAX(4.5) MIN(0.5)
SET TIMEOUT 9
STOP MAX(6) MIN(1)
SET TIMEOUT 7.4


  e2w addr(0x3f6,0x00)  //Final Adjust
  e2w addr(0x3e6,0x00)
  e2w addr(0x3f7,0x00)  //AGING
  e2w addr(0x3e7,0x00)
  e2w addr(0x3f8,0x00)  //Read Write
  e2w addr(0x3e8,0x00)
  d2f

SET DVD

WAIT DVD9-1
TESTUNIT 15 // CB 2006 01 22
SET YIELD ON
atapi(df,14,18,0,0,0,0,0,0,0,0,0) // disable smart function
atapi(df,14,00,02,01,0,0,0,0,0,0,0) //disable unbalance
atapi(df,14,06,0,0,0,0,0,0,0,0,0) //disable smart function
RANDREAD LBAS(0X0) LBAE(0x3F0000) PASS(20)
SEQREAD LBAS(0x1FD000) LBAE(0x1FDFFF)
RANDACC LBAS(0) LBAE(0x3F0000) PASS(10)
FULLACC LBAS(0X1b0000) LBAE(0x3F0000) PASS(5) max(500)
SEQREAD LBAS(0x3F0000) LBAE(0x3F5000)

  e2w addr(0x3f9,0x00)  //Function
  e2w addr(0x3e9,0x00) 
  D2F

  e2w addr(0x3fb,0x00)  //Final
  e2w addr(0x3eb,0x00)
  d2f

CHECKRPC

  CHECKTST B/F P/A F/A AGING F/T FNT
;;;//////// PASS
TRAYOUT