Login

Subversion Repositories NedoOS

Rev

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

; 19.10.94  23:59
; 19.7.94
; 09.01.92  21:00

;      typ42.as

       ;ORG  50000
       if 0
TY42
        DEFW    0

        DEFW    $TYP42
        DEFW    $CPL42
        DEFW    $ADR42

        DEFB    6
        DEFS    7

;**************************
       IF   .KEY&1
*L+
;FULL
       DEFW #800
$ATB42 DEFS #800
*L-
       ENDIF

       IF   .KEY&2
*L+
;TY42
       DEFW #700
$ATB42 EQU  $-#100
       DEFS #700
*L-
       ENDIF

       IF   .KEY&4
$ATB42 EQU  #3800 ;#33FF
       ENDIF
;**************************
$CPL42  OR      A
        JR      Z,CPL4
        LD      A,#FC
CPL4
        LD      (CONST1+1),A
        LD      (CONST4+1),A
        XOR     A
        RET
       endif
;=======================;
;** Type 42 Chars ******;
;=======================;
sADR42
        LD      A,B
        XOR     C
        AND     3
        XOR     B
        AND     #1B
        ADD     A,#40
        LD      D,A
        SLA     C
        LD      A,C
        SLA     C
        ADD     A,C
        XOR     B
        AND     #F8
        XOR     B
        RRCA
        RRCA
        RRCA
        LD      E,A
        EXX
        RET
;*************************
sTYP42
        EXX
       LD   BC,sATB42
        LD      L,A
        LD      H,#0
        ADD     HL,HL
        ADD     HL,HL
        ADD     HL,HL
        ADD     HL,BC
        LD      B,D
        LD      A,D
        PUSH    DE
        AND     #58
        LD      D,A
        XOR     B
        EX      DE,HL
CONST1  LD      BC,#0800
        RRCA
        JR      C,P62
        RRCA
        JR      C,PR4

        EX      DE,HL
PR0
        LD      A,(DE)
        AND     3
        OR      C
        XOR     (HL)
        LD      (DE),A
        INC     D
        INC     HL
        DJNZ    PR0
        INC     B
        JR      EXIT
;--------------
       DEFM "(c)SOV"
PR40
        DEC     L
        INC     H
        INC     DE
PR4
        RRD
        LD      A,(DE)
        XOR     C
        RRCA
        RRCA
        RRCA
        RRCA
        RLD
        INC     L
        XOR     (HL)
        AND     #C0
        XOR     (HL)
        LD      (HL),A
        DJNZ    PR40
        JR      EXIT
;-------------
P62
        RRCA
        JR      NC,PR6
PR2
        LD      A,(DE)
        XOR     C
        RRCA
        RRCA
        XOR     (HL)
        AND     #3F
        XOR     (HL)
        LD      (HL),A
        INC     DE
        INC     H
        DJNZ    PR2
        JR      EXIT
;-------------
PR60
        DEC     L
        INC     H
        INC     DE
PR6
        LD      A,(DE)
CONST4  XOR     #00
        RLCA
        RLCA
        LD      C,A
        XOR     (HL)
        AND     #FC
        XOR     C
        LD      (HL),A
        INC     L
        LD      A,C
        XOR     (HL)
        AND     #0F
        XOR     C
        LD      (HL),A
        DJNZ    PR60
EXIT
        POP     DE
        LD      A,E
        INC     A
        SUB     B
        LD      E,A
        INC     D
        RES     2,D

        EXX
        RET
;**;**