Top secrets sources NedoPC pentevo

Rev

Rev 801 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?


;LAST UPDATE: 12.04.2018 savelij

ADR_BUF_ISD     EQU 0X6000

                PHASE 5E00H
                JP      LOC_5F56

                JP      SUB_5E3B

BYTE_5E06       DB 5
BYTE_5E07       DB 11H,0,0
WORD_5E0A       DW 0AAH
                DB 0D1H,3
WORD_5E0E       DW 0
BYTE_5E10       DB 0A0H

                IN      A,(PN_1F7)
                CP      50H
                RET     Z
SUB_5E16        LD      A,(BYTE_5E10)
                OUT     (PN_1F6),A
                LD      A,0CH
                OUT     (PN_3F6),A
                LD      B,0
LOC_5E21        DJNZ    $
                LD      A,8
                OUT     (PN_3F6),A
LOC_5E27        IN      A,(PN_1F7)
                RLCA
                JR      C,LOC_5E27
                LD      A,10H
                OUT     (PN_1F7),A
LOC_5E30        IN      A,(PN_1F7)
                BIT     7,A
                JR      NZ,LOC_5E30
                CP      50H
                RET     Z
                JR      SUB_5E16

SUB_5E3B        CALL    SUB_5E7B
                JR      C,LOC_5E56
LOC_5E40        CALL    SUB_5EC4
                PUSH    BC
                CALL    SUB_5F06
                POP     BC
                RET     C
                LD      A,B
                OR      A
                JR      Z,LOC_5E52
                CALL    SUB_5ED6
                JR      LOC_5E40

LOC_5E52        CALL    LOC_5EF7
                RET     Z
LOC_5E56        LD      A,E
                INC     A
                OUT     (PN_1F3),A
                LD      A,1
                OUT     (PN_1F2),A
                LD      A,21H
                OUT     (PN_1F7),A
                CALL    SUB_5F43
                RET     C
                LD      B,0
LOC_5E68        LD      C,PN_1F0
                INI
                INC     C
                INI
                JR      NZ,LOC_5E68
LOC_5E71        IN      A,(PN_1F0)
                IN      A,(PN_1F7)
                BIT     3,A
                JR      NZ,LOC_5E71
                RRCA
                RET

SUB_5E7B        PUSH    DE
                EXX
                POP     DE
                LD      HL,(WORD_5E0A)
                EX      DE,HL
                XOR     A
                LD      B,A
                LD      C,A
LOC_5E85        SBC     HL,DE
                INC     BC
                JR      NC,LOC_5E85
                DEC     BC
                ADD     HL,DE
                LD      A,(BYTE_5E07)
                RLCA
                LD      E,A
                XOR     A
                LD      D,A
LOC_5E93        SBC     HL,DE
                INC     A
                JR      NC,LOC_5E93
                DEC     A
                ADD     HL,DE
                EX      DE,HL
                LD      D,A
                LD      HL,(WORD_5E0E)
                ADD     HL,BC
                LD      A,E
                EX      AF,AF'
                CALL    SUB_5EE3
                EX      AF,AF'

                SRL     B
                LD      E,A
                JR      Z,LOC_5EBD
                JR      C,LOC_5EB7
                RRCA
                JR      C,LOC_5EB2
LOC_5EB0        LD      A,0FFH
LOC_5EB2        LD      (LOC_5EF7_1),A
SUB_5EB5        OR      A
                RET

LOC_5EB7        RRCA
                JR      NC,LOC_5EB2
                INC     B
                JR      LOC_5EB0

LOC_5EBD        INC     B
                RRCA
                JR      C,LOC_5EB0
                LD      E,A
                SCF
                RET

SUB_5EC4        SRL     E
                LD      A,E
                PUSH    AF
                LD      A,(BYTE_5E07)
                SUB     E
                LD      E,A
                LD      A,B
                SUB     E
                JR      NC,LOC_5ED3
                XOR     A
                LD      E,B
LOC_5ED3        LD      B,A
                POP     AF
                RET

SUB_5ED6        LD      E,0
                EXX
                INC     D
                LD      A,(BYTE_5E06)
                CP      D
                JR      NZ,SUB_5EE3
                LD      D,0
                INC     HL
SUB_5EE3        IN      A,(PN_1F7)
                CP      50H
                JR      NZ,SUB_5EE3
                LD      A,L
                OUT     (PN_1F4),A
                LD      A,H
                OUT     (PN_1F5),A
                LD      A,(BYTE_5E10)
                OR      D
                OUT     (PN_1F6),A
                EXX
                RET

LOC_5EF7        LD      A,0
LOC_5EF7_1      EQU $-1
                CP      0FFH
                RET     Z
                IN      A,(PN_1F3)
                LD      E,A
                LD      A,(BYTE_5E07)
                CP      E
                JR      Z,SUB_5ED6
                RET

SUB_5F06        PUSH    AF
                INC     A
                OUT     (PN_1F3),A
                POP     AF
                LD      A,E
                OUT     (PN_1F2),A
                LD      A,21H
                OUT     (PN_1F7),A
                JR      NC,LOC_5F2B
                CALL    SUB_5F43
                RET     C
                LD      B,80H
LOC_5F1A        IN      A,(PN_1F0)
                DJNZ    LOC_5F1A
LOC_5F1E        LD      C,PN_1F0
                INI
                INC     C
                INI
                JR      NZ,LOC_5F1E
                IN      A,(PN_1F2)
                OR      A
                RET     Z
LOC_5F2B        CALL    SUB_5F43
                RET     C
                LD      C,PN_1F0
LOC_5F31        INI
                INC     C
                INI
                DEC     C
                IN      A,(PN_1F7)
                BIT     3,A
                JR      NZ,LOC_5F31
                IN      A,(PN_1F2)
                OR      A
                JR      NZ,LOC_5F2B
                RET

SUB_5F43        IN      A,(PN_1F7)
                BIT     7,A
                JR      NZ,SUB_5F43
                BIT     3,A
                JR      Z,SUB_5F43
                RRCA
                RET     NC
                CALL    SUB_5E16
                LD      A,7
                SCF
                RET

LOC_5F56        LD      SP,5DC0H
                CALL    SUB_5EB5
LOC_5F5C        LD      A,1
LOC_5F5C_1      EQU $-1
                OUT     (0FEH),A
                CALL    SUB_5F6E
                LD      HL, LOC_5F5C_1
                INC     (HL)
                LD      HL,WORD_5E0E
                INC     (HL)
                JR      NZ,LOC_5F5C
                HALT

SUB_5F6E        LD      HL,ADR_BUF_ISD
                LD      B,1
                LD      DE,0
                CALL    SUB_5E3B
                RET     C
                LD      HL,(ADR_BUF_ISD+7DH)
                LD      DE,"AK"
                LD      A,(ADR_BUF_ISD+7FH)
                XOR     'Y'
                RET     NZ
                SBC     HL,DE
                RET     NZ
                LD      HL,(ADR_BUF_ISD+61H)
                LD      A,L
                OR      H
                RET     Z
                LD      (BYTE_5E06),HL
                LD      HL,(ADR_BUF_ISD+73H)
                LD      A,L
                OR      H
                RET     Z
                LD      (WORD_5E0A),HL
                LD      DE,(ADR_BUF_ISD+91H)
                LD      A,E
                OR      D
                RET     Z
                LD      HL,(ADR_BUF_ISD+8CH)
                LD      A,L
                OR      H
                RET     Z
                LD      A,(ADR_BUF_ISD+8FH)
                OR      A
                RET     Z
                INC     A
                LD      B,A
                PUSH    HL
                CALL    SUB_5E3B
                RET     NC
                POP     HL
                RET
                DEPHASE