Top secrets sources NedoPC ngs

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?


; LAST UPDATE: 21.04.2023 savelij

OUT_GSDAT       MACRO NUM
        IF NUM = 0
                XOR A
        ELSE
                LD A,NUM
        ENDIF

        IFDEF _SPRINTER
                LD (0xC000 + GSDAT),A
        ELSE
                OUT (GSDAT),A
        ENDIF
                ENDM

OUT_GSCOM       MACRO NUM
        IF NUM = 0
                XOR A
        ELSE
                LD A,NUM
        ENDIF

        IFDEF _SPRINTER
                LD (0xC000 + GSCOM),A
        ELSE
                OUT (GSCOM),A
        ENDIF
                ENDM

IN_GSDAT        MACRO
        IFDEF _SPRINTER
                LD A,(0xC000 + GSDAT)
        ELSE
                IN A,(GSDAT)
        ENDIF
                ENDM

IN_GSCOM        MACRO
        IFDEF _SPRINTER
                LD A,(0xC000 + GSCOM)
        ELSE
                IN A,(GSCOM)
        ENDIF
                ENDM

OUT_GSCTR       MACRO NUM
        IF NUM = 0
                XOR A
        ELSE
                LD A,NUM
        ENDIF

        IFDEF _SPRINTER
                LD (0xC000 + GSCTR),A
        ELSE
                OUT (GSCTR),A
        ENDIF
                ENDM

OUT_GSDAT_A     MACRO
        IFDEF _SPRINTER
                LD (0xC000 + GSDAT),A
        ELSE
                OUT (GSDAT),A
        ENDIF
                ENDM

DE_ADR_SCR      MACRO x,y
        IFDEF _SPRINTER
                LD DE,(y + 1) << 8 + x + 1
                CALL SET_DE_ADR_SCR
        ELSE
                LD DE,(((y & 0x18) | 0x40) << 8) + (((y & 7) << 5) + x)
        ENDIF
                ENDM