?? scsi.lst
字號:
; SOURCE LINE # 225
0041 ?C0022:
; SOURCE LINE # 227
0041 120000 R LCALL L?0126
0044 7003 JNZ ?C0025
; SOURCE LINE # 228
0046 AF00 R MOV R7,result
0048 22 RET
0049 ?C0025:
; SOURCE LINE # 230
0049 300007 R JNB useUdma,?C0026
; SOURCE LINE # 231
; SOURCE LINE # 232
004C 120000 R LCALL scsiWriteUdma
004F 8F00 R MOV result,R7
; SOURCE LINE # 233
0051 8005 SJMP ?C0027
0053 ?C0026:
; SOURCE LINE # 235
; SOURCE LINE # 236
0053 120000 R LCALL scsiWrite
0056 8F00 R MOV result,R7
; SOURCE LINE # 237
0058 ?C0027:
; SOURCE LINE # 239
0058 AF00 R MOV R7,result
; SOURCE LINE # 243
; SOURCE LINE # 245
005A ?C0024:
005A 22 RET
; FUNCTION generalSCSIOutCommand (END)
; FUNCTION SCSITestUnitReady (BEGIN)
; SOURCE LINE # 254
; SOURCE LINE # 255
; SOURCE LINE # 257
0000 C200 R CLR result
; SOURCE LINE # 260
0002 200006 E JB scsi,?C0028
; SOURCE LINE # 261
0005 A200 R MOV C,result
0007 E4 CLR A
0008 33 RLC A
0009 FF MOV R7,A
000A 22 RET
000B ?C0028:
; SOURCE LINE # 264
000B C200 R CLR useUdma
; SOURCE LINE # 265
000D 7E00 R MOV R6,#HIGH testUnitReady
000F 7F00 R MOV R7,#LOW testUnitReady
0011 120000 R LCALL _sendSCSICommand
0014 9200 R MOV result,C
; SOURCE LINE # 266
0016 30001D R JNB result,?C0029
; SOURCE LINE # 267
; SOURCE LINE # 268
0019 7E00 R MOV R6,#HIGH requestSense
C51 COMPILER V7.50 SCSI 11/07/2006 14:52:10 PAGE 20
001B 7F00 R MOV R7,#LOW requestSense
001D 120000 R LCALL _sendSCSICommand
0020 9200 R MOV result,C
; SOURCE LINE # 269
; SOURCE LINE # 270
; SOURCE LINE # 271
0022 ?C0031:
; SOURCE LINE # 275
0022 7C00 E MOV R4,#HIGH halfKBuffer
0024 7D00 E MOV R5,#LOW halfKBuffer
0026 C200 E CLR ?_readPIO16toXdata?BIT
0028 7B12 MOV R3,#012H
002A 7A00 MOV R2,#00H
002C 7F20 MOV R7,#020H
002E 120000 E LCALL _readPIO16toXdata
; SOURCE LINE # 276
0031 900000 E MOV DPTR,#halfKBuffer+0CH
0034 E0 MOVX A,@DPTR
0035 FF MOV R7,A
; SOURCE LINE # 277
; SOURCE LINE # 279
0036 ?C0029:
0036 22 RET
; FUNCTION SCSITestUnitReady (END)
; FUNCTION SCSIInquiryToATAPI (BEGIN)
; SOURCE LINE # 286
; SOURCE LINE # 287
; SOURCE LINE # 292
0000 C200 R CLR useUdma
; SOURCE LINE # 293
0002 7E00 R MOV R6,#HIGH inquiryCommand
0004 7F00 R MOV R7,#LOW inquiryCommand
0006 120000 R LCALL _sendSCSICommand
0009 9200 R MOV result,C
; SOURCE LINE # 294
000B 300003 R JNB result,?C0032
; SOURCE LINE # 295
; SOURCE LINE # 296
000E 020000 E LJMP failedIn
; SOURCE LINE # 298
0011 ?C0032:
; SOURCE LINE # 300
0011 120000 E LCALL waitForIntrq
0014 9200 R MOV result,C
; SOURCE LINE # 302
0016 7C00 E MOV R4,#HIGH halfKBuffer
0018 7D00 E MOV R5,#LOW halfKBuffer
001A C200 E CLR ?_readPIO16toXdata?BIT
001C 7B2C MOV R3,#02CH
001E 7A00 MOV R2,#00H
0020 7F20 MOV R7,#020H
0022 120000 E LCALL _readPIO16toXdata
; SOURCE LINE # 305
0025 900000 E MOV DPTR,#halfKBuffer
0028 E0 MOVX A,@DPTR
0029 B40503 CJNE A,#05H,?C0033
; SOURCE LINE # 306
; SOURCE LINE # 307
002C 750002 E MOV intrfcSubClass,#02H
; SOURCE LINE # 308
; SOURCE LINE # 310
C51 COMPILER V7.50 SCSI 11/07/2006 14:52:10 PAGE 21
002F ?C0033:
002F 22 RET
; FUNCTION SCSIInquiryToATAPI (END)
; FUNCTION getDriveDataLen (BEGIN)
; SOURCE LINE # 313
; SOURCE LINE # 314
; SOURCE LINE # 318
0000 7F2A MOV R7,#02AH
0002 120000 E LCALL _readPIO8
0005 EF MOV A,R7
;---- Variable 'driveDataLen' assigned to Register 'R4/R5' ----
0006 7D00 MOV R5,#00H
0008 FC MOV R4,A
; SOURCE LINE # 319
0009 7F28 MOV R7,#028H
000B 120000 E LCALL _readPIO8
000E ED MOV A,R5
000F 2F ADD A,R7
0010 FD MOV R5,A
0011 E4 CLR A
0012 3C ADDC A,R4
; SOURCE LINE # 320
0013 FE MOV R6,A
0014 AF05 MOV R7,AR5
; SOURCE LINE # 321
0016 ?C0035:
0016 22 RET
; FUNCTION getDriveDataLen (END)
; FUNCTION scsiWrite (BEGIN)
; SOURCE LINE # 383
; SOURCE LINE # 384
; SOURCE LINE # 386
0000 E4 CLR A
0001 F500 R MOV wDriveDataLen,A
0003 F500 R MOV wDriveDataLen+01H,A
; SOURCE LINE # 387
0005 F500 R MOV driveStatus,A
; SOURCE LINE # 388
0007 F500 R MOV wAmountToWrite,A
0009 F500 R MOV wAmountToWrite+01H,A
; SOURCE LINE # 389
000B F500 R MOV wAmountSent,A
000D F500 R MOV wAmountSent+01H,A
; SOURCE LINE # 390
000F C200 R CLR bDone
; SOURCE LINE # 391
0011 C200 R CLR bShortPacketReceived
; SOURCE LINE # 392
0013 F500 R MOV cReturnStatus,A
0015 ?C0036:
; SOURCE LINE # 397
0015 120000 E LCALL readATAPI_STATUS_REG
0018 EF MOV A,R7
0019 20E7F9 JB ACC.7,?C0036
001C ?C0037:
; SOURCE LINE # 400
001C 120000 E LCALL readATAPI_STATUS_REG
001F 8F00 R MOV driveStatus,R7
; SOURCE LINE # 402
0021 E500 R MOV A,driveStatus
C51 COMPILER V7.50 SCSI 11/07/2006 14:52:10 PAGE 22
0023 20E302 JB ACC.3,$ + 5H
0026 0100 R AJMP ?C0038
; SOURCE LINE # 403
0028 ?C0039:
; SOURCE LINE # 404
0028 E500 R MOV A,driveStatus
002A 30E002 JNB ACC.0,$ + 5H
002D 0100 R AJMP ?C0038
002F 300002 R JNB bDone,$ + 5H
0032 0100 R AJMP ?C0038
0034 120000 R LCALL L?0127
0037 7002 JNZ $ + 4H
0039 0100 R AJMP ?C0038
; SOURCE LINE # 405
; SOURCE LINE # 407
003B 90E6A3 MOV DPTR,#0E6A3H
003E E0 MOVX A,@DPTR
003F 5405 ANL A,#05H
0041 70E5 JNZ ?C0039
; SOURCE LINE # 408
; SOURCE LINE # 409
0043 120000 R LCALL L?0132
0046 FE MOV R6,A
0047 90E690 MOV DPTR,#0E690H
004A E0 MOVX A,@DPTR
004B 5E ANL A,R6
004C FE MOV R6,A
004D A3 INC DPTR
004E E0 MOVX A,@DPTR
004F 5F ANL A,R7
0050 4E ORL A,R6
0051 6002 JZ ?C0042
; SOURCE LINE # 410
0053 D200 R SETB bShortPacketReceived
0055 ?C0042:
; SOURCE LINE # 412
0055 90E691 MOV DPTR,#0E691H
0058 E4 CLR A
0059 F0 MOVX @DPTR,A
; SOURCE LINE # 415
005A E500 R MOV A,wDriveDataLen+01H
005C 4500 R ORL A,wDriveDataLen
005E 7007 JNZ ?C0043
; SOURCE LINE # 416
0060 120000 R LCALL getDriveDataLen
0063 8E00 R MOV wDriveDataLen,R6
0065 8F00 R MOV wDriveDataLen+01H,R7
0067 ?C0043:
; SOURCE LINE # 418
0067 E4 CLR A
0068 F500 R MOV wAmountSent,A
006A F500 R MOV wAmountSent+01H,A
006C ?C0044:
; SOURCE LINE # 419
006C D3 SETB C
006D E500 E MOV A,wPacketSize+01H
006F 9500 R SUBB A,wAmountSent+01H
0071 E500 E MOV A,wPacketSize
0073 9500 R SUBB A,wAmountSent
0075 40B1 JC ?C0039
0077 2000AE R JB bDone,?C0039
007A 120000 R LCALL L?0127
C51 COMPILER V7.50 SCSI 11/07/2006 14:52:10 PAGE 23
007D 60A9 JZ ?C0039
; SOURCE LINE # 420
; SOURCE LINE # 424
007F E500 E MOV A,wPacketSize+01H
0081 9500 R SUBB A,wAmountSent+01H
0083 FF MOV R7,A
0084 E500 E MOV A,wPacketSize
0086 9500 R SUBB A,wAmountSent
0088 FE MOV R6,A
0089 C3 CLR C
008A EF MOV A,R7
008B 9500 R SUBB A,wDriveDataLen+01H
008D EE MOV A,R6
008E 9500 R SUBB A,wDriveDataLen
0090 5002 JNC ?C0046
0092 8004 SJMP ?C0047
0094 ?C0046:
0094 AE00 R MOV R6,wDriveDataLen
0096 AF00 R MOV R7,wDriveDataLen+01H
0098 ?C0047:
0098 8E00 R MOV wAmountToWrite,R6
009A 8F00 R MOV wAmountToWrite+01H,R7
; SOURCE LINE # 425
009C 120000 R LCA
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -