Go to most recent revision |
    Blame |
    Compare with Previous |
    Last modification |
    View Log
    | Download
    | RSS feed
  
  
 
 
;LAST UPDATE: 12.04.2018 savelij
 
 
 
ADR_BUF_ISD     EQU 0X6000
 
 
 
                PHASE 5E00H
 
HDD_NEMO        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