Rev 680 |
    Go to most recent revision |
    Blame |
    Compare with Previous |
    Last modification |
    View Log
    | Download
    | RSS feed
  
  
 
 
;LAST UPDATE: 12.04.2018 savelij
 
 
 
;==================ЧТЕНИЕ С DIVIDE ВИНТА======================
 
RD_HDDD         PUSH BC
 
                PUSH DE
 
                CALL SETVREG
 
                EX AF,AF'
 
                LD C,PV_1F7
 
                LD A,0X20
 
                OUT (C),A
 
                LD C,PV_1F7
 
HDVRD1          IN A,(C)
 
                AND 0X88
 
                CP 8
 
                JR NZ,HDVRD1
 
                EX AF,AF'
 
HDVRD2          EX AF,AF'
 
                CALL READVSEC
 
                LD C,PV_1F7
 
HDVRD3          IN A,(C)
 
                AND 0X80
 
                JR NZ,HDVRD3
 
                EX AF,AF'
 
                DEC A
 
                JR NZ,HDVRD2
 
EXITVHD         POP DE
 
                POP BC
 
                LD A,B
 
                AND 0X0F
 
                LD B,A
 
                XOR A
 
                RET
 
 
 
SETVREG         PUSH DE
 
                LD D,B
 
                LD E,C
 
                LD BC,0XFF00+PV_1F6
 
                OUT (C),D
 
                EX AF,AF'
 
                LD C,PV_1F7
 
SETVRE1         IN A,(C)
 
                AND 0X80
 
                JR NZ,SETVRE1
 
                LD C,PV_1F5
 
                OUT (C),E
 
                POP DE
 
                LD C,PV_1F4
 
                OUT (C),D
 
                LD C,PV_1F3
 
                OUT (C),E
 
                LD C,PV_1F2
 
                EX AF,AF'
 
                OUT (C),A
 
                RET
 
 
 
;READ SECTOR (512 BYTES)
 
READVSEC        LD A,0X40
 
                LD C,PV_1F0
 
READVSC1        REPT 8
 
                INI
 
                INC B
 
                ENDM
 
                DEC A
 
                JR NZ,READVSC1
 
                RET
 
;==================ЧТЕНИЕ С DIVIDE ВИНТА======================