3 EXTRN _SpawnTask FWORD
\r
4 EXTRN _AllocExch FWORD
\r
5 EXTRN _AllocDMAPage FWORD
\r
6 EXTRN _InitDevDr FWORD
\r
7 EXTRN _DmaSetUp FWORD
\r
8 EXTRN _UnMaskIRQ FWORD
\r
10 EXTRN _SetIRQVector FWORD
\r
11 EXTRN _EndOfIRQ FWORD
\r
12 EXTRN _SendMsg FWORD
\r
13 EXTRN _ISendMsg FWORD
\r
14 EXTRN _WaitMsg FWORD
\r
15 EXTRN _CheckMsg FWORD
\r
16 EXTRN _GetTimerTick FWORD
\r
18 EXTRN _KillAlarm FWORD
\r
20 EXTRN _MicroDelay FWORD
\r
21 EXTRN _OutByte FWORD
\r
22 EXTRN _OutWord FWORD
\r
25 EXTRN _ReadCMOS FWORD
\r
26 EXTRN _CopyData FWORD
\r
27 _fdisk_table DB 175,2,0,0,0,0,0,0,0,0,0
\r
28 DB 0,0,0,0,0,175,2,0,2,9,42
\r
29 DB -1,80,246,15,8,39,2,0,0,0,175
\r
30 DB 2,0,2,15,27,-1,84,246,15,8,79
\r
31 DB 0,0,0,0,175,2,0,2,9,42,-1
\r
32 DB 80,246,15,8,79,2,0,0,0,175,2
\r
33 DB 0,2,18,27,-1,108,246,15,8,79,0
\r
35 _rgSectorMax DD 0,720,2400,1440,2880,0,0,0,0,0
\r
36 _MotorStk DD 100 DUP(0)
\r
38 _fd_fdc_command DB 0h
\r
40 _fd_nr_sectors DB 0h
\r
49 _fdstatus DB 64 DUP(0)
\r
50 _FDStatTmp DB 64 DUP(0)
\r
51 _FDC_STATUS DB 8 DUP(0)
\r
52 _LAST_TRACK DB 3 DUP(0)
\r
66 EXTRN _xprintf: NEAR
\r
85 CALL FWORD PTR _Sleep
\r
86 PUSH OFFSET _fd_newtick
\r
87 CALL FWORD PTR _GetTimerTick
\r
116 CALL FWORD PTR _OutByte
\r
120 MOV AL,_motor1_want
\r
141 CALL FWORD PTR _OutByte
\r
152 PUSH OFFSET _fd_tick
\r
153 CALL FWORD PTR _GetTimerTick
\r
155 MOV BYTE PTR [EBP-1], AL
\r
157 MOV BYTE PTR [EBP-2], AL
\r
158 MOV EAX,DWORD PTR [EBP+8]
\r
167 MOV BYTE PTR [EBP-1], AL
\r
180 MOV BYTE PTR [EBP-1], AL
\r
182 MOV BYTE PTR [EBP-2], AL
\r
197 MOV BYTE PTR [EBP-1], AL
\r
210 MOV BYTE PTR [EBP-1], AL
\r
212 MOV BYTE PTR [EBP-2], AL
\r
221 MOV AL,BYTE PTR [EBP-1]
\r
229 CALL FWORD PTR _OutByte
\r
232 MOV AL,BYTE PTR [EBP-2]
\r
236 CALL FWORD PTR _Sleep
\r
245 MOV EAX,DWORD PTR [EBP+8]
\r
249 MOV _motor1_want, AL
\r
253 MOV _motor0_want, AL
\r
257 PUBLIC _fdisk_setup:
\r
261 MOV ESI,OFFSET _fdcb
\r
263 MOV BYTE PTR [ESI], AL
\r
264 MOV ESI,OFFSET _fdcb
\r
268 MOV BYTE PTR [ESI], AL
\r
269 MOV ESI,OFFSET _fdcb
\r
273 MOV BYTE PTR [ESI], AL
\r
274 MOV ESI,OFFSET _fdcb
\r
276 MOV BYTE PTR [ESI+12], AL
\r
277 MOV ESI,OFFSET _fdcb
\r
279 MOV BYTE PTR [ESI+13], AL
\r
280 MOV ESI,OFFSET _fdcb
\r
282 MOV BYTE PTR [ESI+36], AL
\r
283 MOV ESI,OFFSET _fdcb
\r
285 MOV BYTE PTR [ESI+37], AL
\r
287 MOV ESI,OFFSET _fdcb
\r
290 MOV BYTE PTR [ESI], AL
\r
292 MOV ESI,OFFSET _fdcb
\r
297 MOV BYTE PTR [ESI], AL
\r
299 MOV ESI,OFFSET _fdcb
\r
304 MOV BYTE PTR [ESI], AL
\r
306 MOV ESI,OFFSET _fdcb
\r
309 MOV BYTE PTR [ESI+12], AL
\r
311 MOV ESI,OFFSET _fdcb
\r
314 MOV BYTE PTR [ESI+13], AL
\r
316 MOV ESI,OFFSET _fdcb
\r
319 MOV BYTE PTR [ESI+36], AL
\r
321 MOV ESI,OFFSET _fdcb
\r
324 MOV BYTE PTR [ESI+37], AL
\r
331 MOV _motor0_want, AL
\r
333 MOV _motor1_want, AL
\r
335 MOV _seek_status, AL
\r
336 MOV ESI,OFFSET _fdstatus
\r
338 MOV DWORD PTR [ESI], EAX
\r
339 PUSH OFFSET _fd_exch
\r
340 CALL FWORD PTR _AllocExch
\r
341 MOV DWORD PTR [EBP-4], EAX
\r
342 MOV EAX,DWORD PTR [EBP-4]
\r
345 MOV EAX,DWORD PTR [EBP-4]
\r
349 PUSH OFFSET _sectbuf
\r
350 PUSH OFFSET _physectbuf
\r
351 CALL FWORD PTR _AllocDMAPage
\r
352 MOV DWORD PTR [EBP-4], EAX
\r
353 MOV EAX,DWORD PTR [EBP-4]
\r
356 MOV EAX,DWORD PTR [EBP-4]
\r
359 PUSH OFFSET _fdmotor_task
\r
363 PUSH OFFSET _MotorStkTop
\r
365 CALL FWORD PTR _SpawnTask
\r
367 PUSH OFFSET _fdisk_isr
\r
368 CALL FWORD PTR _SetIRQVector
\r
370 CALL FWORD PTR _UnMaskIRQ
\r
379 MOV ESI,OFFSET _fdcb
\r
381 MOV WORD PTR [ESI+14], AX
\r
382 MOV ESI,OFFSET _fdcb
\r
387 MOV ESI,OFFSET _rgSectorMax
\r
389 MOV EAX,DWORD PTR [ESI]
\r
390 MOV DWORD PTR [EBX+20], EAX
\r
400 MOV ESI,OFFSET _fdcb
\r
403 MOV WORD PTR [ESI+14], AX
\r
405 MOV ESI,OFFSET _fdcb
\r
411 MOV ESI,OFFSET _rgSectorMax
\r
413 MOV EAX,DWORD PTR [ESI]
\r
414 MOV DWORD PTR [EBX+20], EAX
\r
416 MOV ESI,OFFSET _fdstatus
\r
421 MOV DWORD PTR [EDX], EAX
\r
424 MOV ESI,OFFSET _fdstatus
\r
425 MOV EAX,DWORD PTR [ESI]
\r
438 MOV DWORD PTR [EBP-4], EAX
\r
442 MOV DWORD PTR [EBP-4], EAX
\r
447 MOV EAX,DWORD PTR [EBP-4]
\r
450 MOV ESI,OFFSET _fdstatus
\r
451 MOV EAX,DWORD PTR [EBP-4]
\r
452 MOV DWORD PTR [ESI], EAX
\r
465 MOV DWORD PTR [EBP-4], EAX
\r
469 MOV DWORD PTR [EBP-4], EAX
\r
471 MOV EAX,DWORD PTR [EBP-4]
\r
475 MOV ESI,OFFSET _fdcb
\r
478 MOV BYTE PTR [ESI+13], AL
\r
483 MOV ESI,OFFSET _fdcb
\r
484 MOV EAX,OFFSET _dev_op
\r
485 MOV DWORD PTR [ESI+24], EAX
\r
486 MOV ESI,OFFSET _fdcb
\r
487 MOV EAX,OFFSET _dev_init
\r
488 MOV DWORD PTR [ESI+28], EAX
\r
489 MOV ESI,OFFSET _fdcb
\r
490 MOV EAX,OFFSET _dev_stat
\r
491 MOV DWORD PTR [ESI+32], EAX
\r
493 MOV ESI,OFFSET _fdcb
\r
495 MOV EAX,OFFSET _dev_op
\r
496 MOV DWORD PTR [ESI+24], EAX
\r
498 MOV ESI,OFFSET _fdcb
\r
500 MOV EAX,OFFSET _dev_init
\r
501 MOV DWORD PTR [ESI+28], EAX
\r
503 MOV ESI,OFFSET _fdcb
\r
505 MOV EAX,OFFSET _dev_stat
\r
506 MOV DWORD PTR [ESI+32], EAX
\r
511 CALL FWORD PTR _InitDevDr
\r
512 MOV DWORD PTR [EBP-4], EAX
\r
522 MOV _seek_status, AL
\r
526 CALL FWORD PTR _OutByte
\r
528 CALL FWORD PTR _MicroDelay
\r
531 CALL FWORD PTR _OutByte
\r
534 MOV DWORD PTR [EBP-4], EAX
\r
537 MOV EAX,DWORD PTR [EBP-4]
\r
542 MOV DWORD PTR [EBP-4], EAX
\r
545 MOV EAX,DWORD PTR [EBP-4]
\r
550 MOV DWORD PTR [EBP-4], EAX
\r
553 MOV EAX,DWORD PTR [EBP-4]
\r
556 MOV ESI,OFFSET _FDC_STATUS
\r
558 MOV AL,BYTE PTR [ESI]
\r
565 MOV ESI,OFFSET _FDC_STATUS
\r
567 MOV AL,BYTE PTR [ESI]
\r
600 CALL FWORD PTR _ISendMsg
\r
602 CALL FWORD PTR _EndOfIRQ
\r
610 MOV BYTE PTR [EBP-1], AL
\r
612 MOV AL,BYTE PTR [EBP+8]
\r
616 CALL FWORD PTR _ReadCMOS
\r
619 MOV BYTE PTR [EBP-1], AL
\r
623 CALL FWORD PTR _ReadCMOS
\r
628 MOV BYTE PTR [EBP-1], AL
\r
631 MOV AL,BYTE PTR [EBP-1]
\r
640 MOV DWORD PTR [EBP-4], EAX
\r
643 CALL FWORD PTR _InByte
\r
644 MOV BYTE PTR [EBP-5], AL
\r
646 CALL FWORD PTR _MicroDelay
\r
648 MOV AL,BYTE PTR [EBP-5]
\r
653 MOV AL,BYTE PTR [EBP-5]
\r
658 CALL FWORD PTR _InByte
\r
659 MOV BYTE PTR [EBP-6], AL
\r
661 CALL FWORD PTR _MicroDelay
\r
665 MOV AL,BYTE PTR [EBP+8]
\r
668 CALL FWORD PTR _OutByte
\r
670 CALL FWORD PTR _MicroDelay
\r
676 MOV EAX,DWORD PTR [EBP-4]
\r
677 DEC DWORD PTR [EBP-4]
\r
689 MOV ESI,OFFSET _fdstatus
\r
691 MOV AL,BYTE PTR [ESI+13]
\r
694 MOV CL,BYTE PTR [EBP+8]
\r
696 MOV ESI,OFFSET _fdisk_table
\r
699 MOV AL,BYTE PTR [ESI]
\r
708 CALL FWORD PTR _Alarm
\r
709 MOV DWORD PTR [EBP-4], EAX
\r
711 PUSH OFFSET _fd_msg
\r
712 CALL FWORD PTR _WaitMsg
\r
713 MOV DWORD PTR [EBP-4], EAX
\r
714 MOV EAX,DWORD PTR [EBP-4]
\r
718 CALL FWORD PTR _KillAlarm
\r
719 MOV EAX,DWORD PTR [EBP-4]
\r
722 MOV ESI,OFFSET _fd_msg
\r
723 MOV EAX,DWORD PTR [ESI]
\r
728 MOV ESI,OFFSET _fdstatus
\r
730 MOV DWORD PTR [ESI], EAX
\r
734 CALL FWORD PTR _KillAlarm
\r
735 MOV ESI,OFFSET _fdstatus
\r
737 MOV DWORD PTR [ESI], EAX
\r
749 MOV DWORD PTR [EBP-4], EAX
\r
750 MOV EAX,DWORD PTR [EBP-4]
\r
757 MOV DWORD PTR [EBP-4], EAX
\r
759 MOV EAX,DWORD PTR [EBP-4]
\r
763 MOV DWORD PTR [EBP-4], EAX
\r
765 MOV EAX,DWORD PTR [EBP-4]
\r
770 MOV DWORD PTR [EBP-4], EAX
\r
772 MOV EAX,DWORD PTR [EBP-4]
\r
777 MOV DWORD PTR [EBP-4], EAX
\r
779 MOV EAX,DWORD PTR [EBP-4]
\r
782 MOV ESI,OFFSET _FDC_STATUS
\r
784 MOV AL,BYTE PTR [ESI]
\r
789 MOV ESI,OFFSET _FDC_STATUS
\r
792 MOV AL,BYTE PTR [ESI]
\r
805 MOV EAX,DWORD PTR [EBP-4]
\r
820 MOV CL,_seek_status
\r
831 MOV DWORD PTR [EBP-4], EAX
\r
834 MOV EAX,DWORD PTR [EBP-4]
\r
844 MOV CL,_seek_status
\r
846 MOV _seek_status, AL
\r
849 MOV ESI,OFFSET _LAST_TRACK
\r
852 MOV BYTE PTR [ESI], AL
\r
860 CALL _wait_for_head
\r
865 MOV ESI,OFFSET _fdstatus
\r
867 MOV AL,BYTE PTR [ESI+13]
\r
871 MOV ESI,OFFSET _fdisk_table
\r
874 MOV AL,BYTE PTR [ESI]
\r
887 MOV ESI,OFFSET _LAST_TRACK
\r
890 MOV AL,BYTE PTR [ESI]
\r
902 MOV ESI,OFFSET _LAST_TRACK
\r
906 MOV BYTE PTR [ESI], AL
\r
909 MOV DWORD PTR [EBP-4], EAX
\r
910 MOV EAX,DWORD PTR [EBP-4]
\r
923 MOV DWORD PTR [EBP-4], EAX
\r
925 MOV EAX,DWORD PTR [EBP-4]
\r
932 MOV DWORD PTR [EBP-4], EAX
\r
934 MOV EAX,DWORD PTR [EBP-4]
\r
938 MOV DWORD PTR [EBP-4], EAX
\r
940 MOV EAX,DWORD PTR [EBP-4]
\r
945 MOV DWORD PTR [EBP-4], EAX
\r
947 MOV EAX,DWORD PTR [EBP-4]
\r
952 MOV DWORD PTR [EBP-4], EAX
\r
954 MOV EAX,DWORD PTR [EBP-4]
\r
957 MOV ESI,OFFSET _FDC_STATUS
\r
959 MOV AL,BYTE PTR [ESI]
\r
970 MOV CL,_seek_status
\r
972 MOV _seek_status, AL
\r
974 MOV DWORD PTR [EBP-4], EAX
\r
975 MOV EAX,DWORD PTR [EBP-4]
\r
979 MOV EAX,DWORD PTR [EBP-4]
\r
982 CALL _wait_for_head
\r
994 MOV WORD PTR [EBP-2], AX
\r
996 MOVZX EAX,WORD PTR [EBP-2]
\r
1003 MOVZX EAX,WORD PTR [EBP-2]
\r
1004 INC WORD PTR [EBP-2]
\r
1008 CALL FWORD PTR _InByte
\r
1009 MOV BYTE PTR [EBP-3], AL
\r
1011 CALL FWORD PTR _MicroDelay
\r
1013 MOV AL,BYTE PTR [EBP-3]
\r
1018 MOV AL,BYTE PTR [EBP-3]
\r
1022 MOV ESI,DWORD PTR [EBP+8]
\r
1026 CALL FWORD PTR _InByte
\r
1028 MOV BYTE PTR [EDX], AL
\r
1030 CALL FWORD PTR _MicroDelay
\r
1047 MOV WORD PTR [EBP-2], AX
\r
1049 MOVZX EAX,WORD PTR [EBP-2]
\r
1050 CMP EAX,DWORD PTR [EBP+8]
\r
1054 LEA EAX,BYTE PTR [EBP-3]
\r
1059 MOVZX EAX,WORD PTR [EBP-2]
\r
1060 INC WORD PTR [EBP-2]
\r
1061 MOV ESI,OFFSET _FDC_STATUS
\r
1064 MOV AL,BYTE PTR [EBP-3]
\r
1065 MOV BYTE PTR [ESI], AL
\r
1067 CALL FWORD PTR _MicroDelay
\r
1086 CALL FWORD PTR _InByte
\r
1087 MOV BYTE PTR [EBP-1], AL
\r
1089 MOV AL,BYTE PTR [EBP-1]
\r
1094 MOV AL,BYTE PTR [EBP-1]
\r
1099 CALL FWORD PTR _InByte
\r
1101 CALL FWORD PTR _MicroDelay
\r
1129 MOV DWORD PTR [EBP-4], EAX
\r
1130 MOV EAX,DWORD PTR [EBP-4]
\r
1136 MOV DWORD PTR [EBP-4], EAX
\r
1137 PUSH DWORD PTR [EBP-4]
\r
1138 CALL FWORD PTR _MicroDelay
\r
1147 CALL FWORD PTR _InByte
\r
1151 MOV ESI,OFFSET _fdstatus
\r
1153 MOV BYTE PTR [ESI+12], AL
\r
1157 MOV ESI,OFFSET _fdstatus
\r
1159 MOV BYTE PTR [ESI+12], AL
\r
1170 MOV DWORD PTR [EBP-4], EAX
\r
1173 MOV EAX,DWORD PTR [EBP-4]
\r
1178 MOV DWORD PTR [EBP-4], EAX
\r
1181 MOV EAX,DWORD PTR [EBP-4]
\r
1184 MOV ESI,OFFSET _FDC_STATUS
\r
1186 MOV AL,BYTE PTR [ESI]
\r
1193 MOV ESI,OFFSET _FDC_STATUS
\r
1195 MOV AL,BYTE PTR [ESI]
\r
1205 MOV ESI,OFFSET _FDC_STATUS
\r
1207 MOV AL,BYTE PTR [ESI]
\r
1218 MOV ESI,OFFSET _FDC_STATUS
\r
1221 MOV AL,BYTE PTR [ESI]
\r
1226 MOV DWORD PTR [EBP-4], EAX
\r
1230 MOV ESI,OFFSET _FDC_STATUS
\r
1233 MOV AL,BYTE PTR [ESI]
\r
1238 MOV DWORD PTR [EBP-4], EAX
\r
1242 MOV ESI,OFFSET _FDC_STATUS
\r
1245 MOV AL,BYTE PTR [ESI]
\r
1250 MOV DWORD PTR [EBP-4], EAX
\r
1254 MOV ESI,OFFSET _FDC_STATUS
\r
1257 MOV AL,BYTE PTR [ESI]
\r
1262 MOV DWORD PTR [EBP-4], EAX
\r
1266 MOV ESI,OFFSET _FDC_STATUS
\r
1269 MOV AL,BYTE PTR [ESI]
\r
1274 MOV DWORD PTR [EBP-4], EAX
\r
1278 MOV ESI,OFFSET _FDC_STATUS
\r
1281 MOV AL,BYTE PTR [ESI]
\r
1286 MOV DWORD PTR [EBP-4], EAX
\r
1289 MOV ESI,OFFSET _fdstatus
\r
1291 MOV DWORD PTR [ESI], EAX
\r
1298 MOV EAX,DWORD PTR [EBP-4]
\r
1308 MOV DWORD PTR [EBP-4], EAX
\r
1310 MOV BYTE PTR [EBP-6], AL
\r
1312 MOV AL,_fd_nr_sectors
\r
1315 MOV DWORD PTR [EBP-10], EAX
\r
1318 MOV AL,_fd_nr_sectors
\r
1321 MOV EAX,DWORD PTR [EBP-4]
\r
1327 MOV EAX,DWORD PTR [EBP+8]
\r
1331 MOV BYTE PTR [EBP-5], AL
\r
1333 MOV _fd_fdc_command, AL
\r
1339 MOV BYTE PTR [EBP-5], AL
\r
1343 CALL FWORD PTR _CopyData
\r
1345 MOV _fd_fdc_command, AL
\r
1349 MOV BYTE PTR [EBP-5], AL
\r
1351 MOV _fd_fdc_command, AL
\r
1364 MOVSX EAX,BYTE PTR [EBP-5]
\r
1367 CALL FWORD PTR _DmaSetUp
\r
1368 MOV DWORD PTR [EBP-4], EAX
\r
1369 MOV EAX,DWORD PTR [EBP-4]
\r
1373 MOVSX EAX,BYTE PTR [EBP-6]
\r
1374 DEC BYTE PTR [EBP-6]
\r
1378 MOV DWORD PTR [EBP-4], EAX
\r
1379 MOV EAX,DWORD PTR [EBP-4]
\r
1383 MOV DWORD PTR [EBP-4], EAX
\r
1385 MOV EAX,DWORD PTR [EBP-4]
\r
1389 MOV AL,_fd_fdc_command
\r
1392 MOV DWORD PTR [EBP-4], EAX
\r
1394 MOV EAX,DWORD PTR [EBP-4]
\r
1409 MOV DWORD PTR [EBP-4], EAX
\r
1411 MOV EAX,DWORD PTR [EBP-4]
\r
1418 MOV DWORD PTR [EBP-4], EAX
\r
1420 MOV EAX,DWORD PTR [EBP-4]
\r
1427 MOV DWORD PTR [EBP-4], EAX
\r
1429 MOV EAX,DWORD PTR [EBP-4]
\r
1436 MOV DWORD PTR [EBP-4], EAX
\r
1438 MOV EAX,DWORD PTR [EBP-4]
\r
1445 MOV DWORD PTR [EBP-4], EAX
\r
1447 MOV EAX,DWORD PTR [EBP-4]
\r
1454 MOV DWORD PTR [EBP-4], EAX
\r
1456 MOV EAX,DWORD PTR [EBP-4]
\r
1463 MOV DWORD PTR [EBP-4], EAX
\r
1465 MOV EAX,DWORD PTR [EBP-4]
\r
1472 MOV DWORD PTR [EBP-4], EAX
\r
1474 MOV EAX,DWORD PTR [EBP-4]
\r
1477 CALL _get_fdc_status
\r
1478 MOV DWORD PTR [EBP-4], EAX
\r
1480 MOV EAX,DWORD PTR [EBP-4]
\r
1486 CALL FWORD PTR _MicroDelay
\r
1490 MOV EAX,DWORD PTR [EBP-4]
\r
1493 MOV EAX,DWORD PTR [EBP+8]
\r
1501 CALL FWORD PTR _CopyData
\r
1503 MOV ESI,OFFSET _fdstatus
\r
1504 MOV EAX,DWORD PTR [ESI+4]
\r
1505 INC DWORD PTR [ESI+4]
\r
1508 MOV _fd_pData, EAX
\r
1509 DEC _fd_nr_sectors
\r
1511 MOV AL,_fd_nr_sectors
\r
1515 MOV ESI,OFFSET _fdstatus
\r
1517 MOV AL,BYTE PTR [ESI+13]
\r
1521 MOV ESI,OFFSET _fdisk_table
\r
1526 MOV CL,BYTE PTR [ESI]
\r
1532 MOV _fd_sector, AL
\r
1552 MOV EAX,DWORD PTR [EBP-4]
\r
1562 MOV _fd_fdc_command, AL
\r
1570 CALL FWORD PTR _DmaSetUp
\r
1571 MOV DWORD PTR [EBP-4], EAX
\r
1572 MOV EAX,DWORD PTR [EBP-4]
\r
1577 MOV DWORD PTR [EBP-4], EAX
\r
1579 MOV EAX,DWORD PTR [EBP-4]
\r
1587 MOV DWORD PTR [EBP-4], EAX
\r
1589 MOV EAX,DWORD PTR [EBP-4]
\r
1596 MOV DWORD PTR [EBP-4], EAX
\r
1598 MOV EAX,DWORD PTR [EBP-4]
\r
1602 MOV DWORD PTR [EBP-4], EAX
\r
1604 MOV EAX,DWORD PTR [EBP-4]
\r
1608 MOV AL,_fd_fdc_command
\r
1611 MOV DWORD PTR [EBP-4], EAX
\r
1613 MOV EAX,DWORD PTR [EBP-4]
\r
1628 MOV DWORD PTR [EBP-4], EAX
\r
1630 MOV EAX,DWORD PTR [EBP-4]
\r
1637 MOV DWORD PTR [EBP-4], EAX
\r
1639 MOV EAX,DWORD PTR [EBP-4]
\r
1646 MOV DWORD PTR [EBP-4], EAX
\r
1648 MOV EAX,DWORD PTR [EBP-4]
\r
1655 MOV DWORD PTR [EBP-4], EAX
\r
1657 MOV EAX,DWORD PTR [EBP-4]
\r
1664 MOV DWORD PTR [EBP-4], EAX
\r
1666 MOV EAX,DWORD PTR [EBP-4]
\r
1669 CALL _get_fdc_status
\r
1670 MOV DWORD PTR [EBP-4], EAX
\r
1672 MOV EAX,DWORD PTR [EBP-4]
\r
1680 MOV EAX,DWORD PTR [EBP+8]
\r
1681 MOV _fd_pData, EAX
\r
1684 MOV ESI,OFFSET _fdstatus
\r
1686 MOV DWORD PTR [ESI+4], EAX
\r
1687 MOV ESI,OFFSET _fdstatus
\r
1689 MOV DWORD PTR [ESI], EAX
\r
1690 MOV EAX,DWORD PTR [EBP+24]
\r
1703 PUSH OFFSET _fd_msg
\r
1704 CALL FWORD PTR _CheckMsg
\r
1705 MOV DWORD PTR [EBP-4], EAX
\r
1717 MOV ESI,OFFSET _fdstatus
\r
1719 MOV DWORD PTR [ESI], EAX
\r
1722 MOV ESI,OFFSET _fdstatus
\r
1725 MOV BYTE PTR [ESI+13], AL
\r
1732 MOV ESI,OFFSET _fdstatus
\r
1734 MOV DWORD PTR [ESI], EAX
\r
1737 MOV ESI,OFFSET _fdstatus
\r
1740 MOV BYTE PTR [ESI+13], AL
\r
1742 MOV ESI,OFFSET _fdstatus
\r
1743 MOV EAX,DWORD PTR [EBP+16]
\r
1744 CMP EAX,DWORD PTR [ESI+8]
\r
1748 MOV ESI,OFFSET _fdstatus
\r
1750 MOV DWORD PTR [ESI], EAX
\r
1757 MOV ESI,OFFSET _fdstatus
\r
1759 MOV AL,BYTE PTR [ESI+13]
\r
1763 MOV ESI,OFFSET _fdisk_table
\r
1766 MOV AL,BYTE PTR [ESI]
\r
1769 CALL FWORD PTR _OutByte
\r
1771 MOV ESI,OFFSET _fdstatus
\r
1773 MOV ESI,OFFSET _fdstatus
\r
1775 MOV AL,BYTE PTR [ESI+13]
\r
1777 MOV ESI,OFFSET _rgSectorMax
\r
1779 MOV EAX,DWORD PTR [ESI]
\r
1780 MOV DWORD PTR [EBX+8], EAX
\r
1781 MOV EAX,DWORD PTR [EBP+12]
\r
1782 MOV _fd_nr_sectors, AL
\r
1793 MOV EAX,DWORD PTR [EBP+16]
\r
1807 MOV EAX,DWORD PTR [EBP+16]
\r
1811 MOV DWORD PTR [EBP-8], EAX
\r
1815 MOV EAX,DWORD PTR [EBP-8]
\r
1822 MOV EAX,DWORD PTR [EBP-8]
\r
1827 MOV _fd_sector, AL
\r
1828 MOV EAX,DWORD PTR [EBP+20]
\r
1831 MOV ESI,OFFSET _fdstatus
\r
1833 MOV DWORD PTR [ESI], EAX
\r
1838 MOV ESI,OFFSET _fdstatus
\r
1841 PUSH DWORD PTR [EBP+20]
\r
1844 MOV DWORD PTR [EDX], EAX
\r
1847 MOV ESI,OFFSET _fdstatus
\r
1849 MOV DWORD PTR [ESI], EAX
\r
1856 MOV ESI,OFFSET _fdstatus
\r
1858 MOV DWORD PTR [ESI], EAX
\r
1881 MOV ESI,OFFSET _fdstatus
\r
1882 MOV EAX,DWORD PTR [ESI]
\r
1891 MOV EAX,DWORD PTR [EBP+20]
\r
1917 MOV ESI,OFFSET _fdstatus
\r
1919 MOV DWORD PTR [ESI], EAX
\r
1922 MOV ESI,OFFSET _fdstatus
\r
1925 MOV BYTE PTR [ESI+13], AL
\r
1926 MOV ESI,OFFSET _fdstatus
\r
1933 MOV ESI,OFFSET _fdisk_table
\r
1936 MOV AL,BYTE PTR [ESI]
\r
1939 MOV DWORD PTR [EBX+16], EAX
\r
1940 MOV ESI,OFFSET _fdstatus
\r
1942 MOV DWORD PTR [ESI+20], EAX
\r
1943 MOV ESI,OFFSET _fdstatus
\r
1950 MOV ESI,OFFSET _fdisk_table
\r
1953 MOV AL,BYTE PTR [ESI]
\r
1954 MOV DWORD PTR [EBX+24], EAX
\r
1955 MOV ESI,OFFSET _fdstatus
\r
1957 MOV DWORD PTR [ESI+28], EAX
\r
1967 MOV ESI,OFFSET _fdstatus
\r
1969 MOV DWORD PTR [ESI], EAX
\r
1972 MOV ESI,OFFSET _fdstatus
\r
1975 MOV BYTE PTR [ESI+13], AL
\r
1976 MOV ESI,OFFSET _fdstatus
\r
1983 MOV ESI,OFFSET _fdisk_table
\r
1986 MOV AL,BYTE PTR [ESI]
\r
1989 MOV DWORD PTR [EBX+16], EAX
\r
1990 MOV ESI,OFFSET _fdstatus
\r
1992 MOV DWORD PTR [ESI+20], EAX
\r
1993 MOV ESI,OFFSET _fdstatus
\r
2000 MOV ESI,OFFSET _fdisk_table
\r
2003 MOV AL,BYTE PTR [ESI]
\r
2004 MOV DWORD PTR [EBX+24], EAX
\r
2005 MOV ESI,OFFSET _fdstatus
\r
2007 MOV DWORD PTR [ESI+28], EAX
\r
2009 MOV ESI,OFFSET _fdstatus
\r
2011 MOV ESI,OFFSET _fdstatus
\r
2013 MOV AL,BYTE PTR [ESI+13]
\r
2015 MOV ESI,OFFSET _rgSectorMax
\r
2017 MOV EAX,DWORD PTR [ESI]
\r
2018 MOV DWORD PTR [EBX+8], EAX
\r
2019 MOV ESI,OFFSET _fdstatus
\r
2021 MOV AL,BYTE PTR [ESI+13]
\r
2023 MOV ESI,OFFSET _fdisk_table
\r
2026 MOV EAX,OFFSET _fdstatus
\r
2030 CALL FWORD PTR _CopyData
\r
2031 PUSH OFFSET _FDC_STATUS
\r
2032 MOV EAX,OFFSET _fdstatus
\r
2036 CALL FWORD PTR _CopyData
\r
2037 MOV EAX,DWORD PTR [EBP+12]
\r
2042 MOV EAX,DWORD PTR [EBP+12]
\r
2043 MOV DWORD PTR [EBP-4], EAX
\r
2047 MOV DWORD PTR [EBP-4], EAX
\r
2049 PUSH OFFSET _fdstatus
\r
2050 PUSH DWORD PTR [EBP+16]
\r
2051 PUSH DWORD PTR [EBP-4]
\r
2052 CALL FWORD PTR _CopyData
\r
2053 MOV ESI,DWORD PTR [EBP+8]
\r
2054 MOV EAX,DWORD PTR [EBP-4]
\r
2055 MOV DWORD PTR [ESI], EAX
\r
2065 MOV EAX,DWORD PTR [EBP+8]
\r
2071 MOV DWORD PTR [EBP-4], EAX
\r
2074 MOV EAX,DWORD PTR [EBP+8]
\r
2075 MOV DWORD PTR [EBP-4], EAX
\r
2077 PUSH DWORD PTR [EBP+12]
\r
2078 PUSH OFFSET _FDStatTmp
\r
2079 PUSH DWORD PTR [EBP-4]
\r
2080 CALL FWORD PTR _CopyData
\r
2081 MOV EAX,DWORD PTR [EBP+16]
\r
2100 MOV ESI,OFFSET _FDStatTmp
\r
2102 MOV AL,BYTE PTR [ESI+13]
\r
2111 MOV ESI,OFFSET _fdstatus
\r
2113 MOV DWORD PTR [ESI], EAX
\r
2116 MOV ESI,OFFSET _fdstatus
\r
2119 MOV BYTE PTR [ESI+13], AL
\r
2122 MOV ESI,OFFSET _FDStatTmp
\r
2124 MOV AL,BYTE PTR [ESI+13]
\r
2133 MOV ESI,OFFSET _fdstatus
\r
2135 MOV DWORD PTR [ESI], EAX
\r
2138 MOV ESI,OFFSET _fdstatus
\r
2141 MOV BYTE PTR [ESI+13], AL
\r
2147 MOV ESI,OFFSET _fdstatus
\r
2152 MOV DWORD PTR [EDX], EAX
\r
2157 MOV ESI,OFFSET _fdstatus
\r
2158 MOV EAX,DWORD PTR [ESI]
\r