
ERGB    CALL PRGB
        JP main
STANDART
        LD A,7
        LD (REALRGB),A
        CALL ReMixRgb
        XOR A
        LD (BORDER),A
        JP ReFr

CURRENT
        ld a,0
TransparentAll_flg EQU $-1
        or a
        jr z,CURRENT_ntranspoff
    CALL ReMixRgb
        JP ReFr
CURRENT_ntranspoff
    LD A,8
        LD (PAPER),A
        LD (INK),A
        LD A,2
        LD (FLASH),A
        LD (BRIGHT),A
        JP ReFr

rgb_Medit  ld de,#160B
           ld bc, TRGB.mtedit
           ld hl,MASKRGB
          jr  rgb_edit_

rgb_edit ;LD HL,TRGB.tedit
           ld de,#160C
           ld bc, TRGB.tedit
           ld hl,REALRGB
rgb_edit_  ld (.toaddr),hl
           ld l,c
           ld h,b
         push hl
;         LD DE,#160C
         LD B,2
         XOR A
         EX AF,AF'
         LD A,EDIT
         CALL GUI
         pop hl
1       jp c,ReFr
         ld a,(hl)
         inc hl
         call .sub
       jr c,1B
         add a,a
         add a,a
         add a,a
         add a,a
         ld c,a
         ld a,(hl)
         call .sub
        jr c,1B
         or c
        ld (REALRGB),a
.toaddr EQU $-2
        call ReMixM
        jp ReFr.r
.sub    sub 48    ; "0"
       ret c
        cp 10
       jr c,1F
        sub 7
1       cp 16
        jr c,2F
        sub 32
        ret c
        cp 16
2       ccf
        ret



CHANGE  LD A,(PAPER)
        LD B,A
        LD A,(INK)
        LD (PAPER),A
        LD A,B
        LD (INK),A
        JP ReFr

CONTR   LD A,(INK)
        CP 8
        JP Z,ergb_
        XOR 7
        LD (PAPER),A
        JP ReFr

TAKERGB CALL CLOSE
takergb CALL LOADSCR
        CALL NOKEY_
        LD HL,Ret
        LD A,ARW_SCN
        CALL GUI
        JR C,prgb_
        LD DE,(ARW_XC)
        CALL RASCHA
        LD A,(HL)
       LD (REALRGB),A
    CALL ReMixRgb
        CALL ReDrawC
        JR prgb_

CH16128 LD A,(f16128)
        CPL
        LD (f16128),A
        CALL CLOSE
        JR prgb_

;PRGB2   LD HL,Ret     ; перенёс чтоб для jr CONTR диапазона хватило /DA
;        JR prgb

PRGB    LD HL,LOADSCR
prgb    LD (takergb+1),HL
        ld a,ArrCancel_Y     ; cancel
        call GUI
prgb_   LD A,#00
f16128  EQU $-1
        AND A
        JP NZ,PRGB128
PRGB16  LD A,%1110
ergb    LD IX,WRgb
        LD (IX+6),A
        call rgb_hexO
        CALL Mtrans_txt_set
        CALL Win_
        cp 128             ; опции без подсветки /DA
       jr c,.cnt
       jp z,RgbMsk_0

       jr RGBClos
.cnt
        SUB 6
        JP Z,STANDART
        DEC A
        JP Z,CURRENT
        DEC A
        JP Z,CHANGE
        DEC A
        JR Z,CONTR
        DEC A
        JR Z,TAKERGB
        DEC A
        JR Z,CH16128
      dec a
     jr z,reBRIGHT
        dec a
       jp z,rgb_edit
        dec a
       jp z,rgb_Medit
    ;dec a
    ;jr z,TRANSP
        LD A,(But)
        CP 9
        JP C,SetInk
        SUB 9
        CP 9
        JP C,SetPap
        SUB 9
        CP 8
        JP C,SetBord
RGBClos JP CLOSE
        ;RET

PRGB2  ; LD HL,Ret
       ; JR prgb
        ld hl,(ARW_ADR)
        push hl
        ld hl,(ARW_XDISP)
        push hl
        call ARW_DEFAULT_
        ld hl,Ret
        call prgb
        pop hl
        ld (ARW_XDISP),hl
        pop hl
        ld (ARW_ADR),hl
       ret
        

reBRIGHT
    ;ld a,[REALRGB]
    ;xor #40
    ;ld [REALRGB],a
    ;CALL ReMixRgb
    ld a,(BRIGHT)
    inc a
    and 1
    ld (BRIGHT),a
    jr ReFr

    if 1==0
TRANSP  ld a,8
    ld [INK],a
    ld [PAPER],a
    ld a,2
    ld [BRIGHT],a
    ld [FLASH],a
    jp ReFr
    endif

ergb_   LD A,%1100
        JR ergb

ReDrawC LD HL,rgbink+6   ; добавил изображения прежних цветов
        ld a,(REALRGB)
        push af
        and 7
        ld c,a
        LD A,(INK)
        CALL offall
        LD HL,rgbpap+6
        pop af
        rra : rra : rra
        and 7
        ld c,a
        LD A,(PAPER)
        CALL offall
        LD HL,rgbbord+6
        LD A,(BORDER)
         ld c,a
        EX AF,AF'
;        LD A,8
         ld b,8
        CALL ofa
        RET

RgbMsk_0     ld a,(MASKRGB) ; +/DA
             or a
             cpl
            jr z,1F
             xor a
1            ld (MASKRGB),a
             call ReMixM
            jr ReFr.r
ReFr    CALL MixRgb
.r      CALL ReDrawC
        JR ergb_

MixRgb_x   ; push ix           ; + /DA
          call MixRgb
          call rgb_hexO
           ld de,#160C        ; 22,12
          ld hl,TRGB.tedit
           call .print
           ld de,#160B        ; 22,11
           ld hl,TRGB.mtedit
.print     push ix
           push de
          ld de,SPACE
          ld bc, 2
          ldir
           pop de
;          ld de,#160C        ; 22,12
          call RealWin
          call RASCH
          ld c,2
          ld a,pr_51
          call GUI_
          pop ix
          ret

; MixRgb  CALL SPAPER   ; заменил для использования маски цвета /DA
;        LD B,A
;        CALL SINK
;        LD C,A
;        CALL SBRIGHT
;        LD D,A
;        CALL SFLASH
;        LD E,A
;        XOR A
;        OR B
;        OR C
;        OR D
;        OR E
;        LD (REALRGB),A
;        LD A,(BORDER)
;        OUT (#FE),A
;        RET

MixRgb
         ld bc,#3F00            ; b-mask c-attr
         ld a,(BRIGHT)
         rra
         rr c
         rra
        jr nc,1F
         set 6,b
1        ld a,(FLASH)
         rra
         rr c
         rra
        jr nc,1F
         set 7,b
1        ld a,(PAPER)
         cp 8
        jr nc,1F
         rlca
         rlca
         rlca
         or c
         ld c,a
         ld a,b
         and #C7
         ld b,a
1        ld a,(INK)
         cp 8
        jr nc,1F
         or c
         ld c,a
         ld a,b
         and #F8
         ld b,a
1        ld a,b
         ld (MASKRGB),a
         ld a,c
         or b
         xor b
         ld c,a
         ld a,(REALRGB)
         and b
         or c
         ld (REALRGB),a
.oBord   ld a,(BORDER)
         out (#FE),a    
        ret

rgb_hexO    ld de,TRGB.tedit ; - пишем цвет в шестнадцатеричном коде /DA
            ld a,(REALRGB)
        ;   jp CHEX_A
            call CHEX_A
            ld de,TRGB.mtedit ; - пишем маску в шестнадцатеричном коде /DA
            ld a,(MASKRGB)
           jp CHEX_A

ReMixM   ; обработка ремикса для маски цвета ; /DA
          call AA
          ld a,(MASKRGB)
          ld b,a
          ld a,2
          bit 7,b
         jr z,1F
          ld (FLASH),a
1         bit 6,b
         jr z,1F
          ld (BRIGHT),a
1         ld a,b
          and #38
         jr z,2F
          cp #38
          ld a,8
         jr z,1F
          inc a
1         ld (PAPER),a
2         ld a,b
          and #07
         ret z
          cp #07
          ld a,8
         jr z,1F
          inc a
1         ld (INK),a
          ret

ReMixRgb
          xor a               ; /DA
          ld (MASKRGB),a
AA      LD A,(REALRGB)
ReMixC  PUSH AF
        AND #07
        LD (INK),A
        POP AF
         rra ; SRL A   ; +/- /DA
         rra ; SRL A
         rra ; SRL A
        PUSH AF
        AND #07
        LD (PAPER),A
        POP AF
         rra ; SRL A   ; +/- /DA
         rra ; SRL A
         rra ; SRL A
        PUSH AF
        AND 1
        LD (BRIGHT),A
        POP AF
         rra ; SRL A   ; +/- /DA
        AND 1
        LD (FLASH),A
        RET

;SBRIGHT LD A,(BRIGHT)   ; удалил из-за использования маски цвета ; /DA
;        RRCA
;        RRCA
;        JR NC,rbr
;        LD A,(REALRGB)
;rbr     AND #40
;        RET

;SFLASH  LD A,(FLASH)
;        RRCA
;        CP 1
;        JR NZ,bfl
;        LD A,(REALRGB)
;bfl     AND #80
;        RET

;SPAPER  LD A,(PAPER)
;        Amul8
;        CP #40
;        RET NZ
;        LD A,(REALRGB)
;        AND #38
;        RET

;SINK    LD A,(INK)
;        CP 8
;        RET NZ
;        LD A,(REALRGB)
;        AND #07
;        RET

INK     DB 8;7
PAPER   DB 8;0

SetInk  LD (INK),A
        JP ReFr

SetPap  LD (PAPER),A
        JP ReFr

SetBord LD (BORDER),A
        JP ReFr

offall  EX AF,AF'
;        LD A,9      ;; для вывода прежних /DA
         ld b,9
;ofa     PUSH HL
ofa      ld a,c
         ld (offall_.a),a
         ld a,b
         push hl
        LD DE,6
        LD BC,OFFS
offall_ LD (HL),C
        INC HL
        LD (HL),B
        INC HL
        ADD HL,DE
        DEC A
        JR NZ,offall_
        LD H,A
        POP BC
         ld a,0
.a   EQU $-1
         push de
         ld de,LASTONS
         call .n
        EX AF,AF'
;        Amul8
;        LD L,A
;        ADD HL,BC
;        LD BC,ONS
;        LD (HL),C
;        INC HL
;        LD (HL),B
         cp 9
        jr c,1F
         ld a,8
        jr 2F
1        ld de,ONS
2        call .n
         pop de
        RET
.n       Amul8
         LD L,A
         ld H,0
         ADD HL,BC
         LD (HL),E
         INC HL
         LD (HL),D
        RET

Mtrans_txt_set
        push af,hl,de,bc
        ld hl, .Trans_txt
        ld c,0
        ld a,(PAPER)
    cp 8
    jr nz, .go
    ld a,(INK)
    cp 8
    jr nz, .go
    ld a,(FLASH)
    cp 2
    jr c, .go
    ld a,(BRIGHT)
    cp 2
    jr c, .go
           inc c
           ld hl, .Ret_txt
.go
           ld a,c
           ld (TransparentAll_flg),a
           ld de, TRGB.Mtrans_txt
           ld bc,12
           ldir
           pop bc,de,hl,af
           ret
.Trans_txt
           if rus
             DB "Прозрачные", 32,32
           else
             DB "Transparent",32
           endif
.Ret_txt
           if rus
            DB "Прежние",32,32,32,32,32
           else
            DB "Previous",32,32,32,32
           endif

WRgb    DEFB 3,2,25,14,5*8,5,%00000110
; Bit 0 - окно с заголовком/без
; Bit 1 - "перерисовать" окно да/нет
; Bit 2 - тискать окно по экрану да/нет
; Bit 3 - выход из окна-ткнуть только лишь за пределами (CANCEL)
        DEFB 0
        DEFW TRGB         ; объект-текст
        DEFW SRGB         ; объект-подсветка (выборка)
        DEFW HRGB          ; горячие клавиши
        DEFW BRGB         ; объект-кнопки (выборка)
        DEFW Nil          ; объект-флажки
        DEFW RRGB         ; объект-радио кнопки
       ; DEFW Nil          ; ползунок
       ; DEFW Nil          ; вызов при создании
       ; DEFW Nil          ; вызов на "прерываниях"
    ;defw #ffff
        DW #FFFF          ; заглушка /DA
TRGB

    if rus
        DB #97,#a5,#e0,#ad,#a8,#ab,#a0,13,13;"Чернила",13,13
        DB #81,#e3,#ac,#a0,#a3,#a0,13,13;"Бумага",13,13
        DB #81,#ae,#e0,#a4,#ee,#e0,13,13,15,13;"Бордюр",13,13,15,13
        DB #9f,#e0,#aa,#ae,#e1,#e2,#ec,"  Flash  >>>",13,13;"Яркость Мигание >>>",13,13
        DB #82,#eb,#aa,#ab,13;"Выкл",13
        DB #82,#aa,#ab,13;"Вкл",13
        DB #8d,#a5,#e2,13;"Нет",13
        DB 22,6,10
        DB #82,#eb,#aa,#ab,13;"Выкл",13
        DB #82,#aa,#ab,13;"Вкл",13
        DB #8d,#a5,#e2,13;"Нет",13
        DB 22,14,8
        DB #91,#e2,#a0,#ad,#a4,#a0,#e0,#e2,#ad,#eb,#a5,13;"Стандартные",13

;        DB #8f,#e0,#ae,#a7,#e0,#a0,#e7,#ad,#eb,#a5,"  ",13;"Прозрачные  ",13 ;
;        DB #8e,#a1,#ac,#a5,#ad,13;"Обмен",13
;        DB #8a,#ae,#ad,#e2,#e0,#a0,#e1,#e2,13;"Контраст",13
;        DB #82,#a7,#ef,#e2,#ec,13;"Взять",13
    else
        DB "Ink",13,13
        DB "Paper",13,13
        DB "Border",13,13,15,13
        DB "Bright  Flash   >>>",13,13;"Яркость Мигание >>>",13,13
        DB "Off",13
        DB "On",13
        DB "Nop",13
        DB 22,6,10
        DB "Off",13
        DB "On",13
        DB "Nop",13
        DB 22,14,8
        DB "Standard",13
        endif
.Mtrans_txt
        DB "Transparent.",13 ;  Меняется, поэтому слово из 12 символов.
         if rus
        DB #8e,#a1,#ac,#a5,#ad,13;"Обмен",13
        DB #8a,#ae,#ad,#e2,#e0,#a0,#e1,#e2,13;"Контраст",13
        DB #82,#a7,#ef,#e2,#ec,13;"Взять",13
    else
        DB "Exchange",13
        DB "Contrast",13
        DB "Take",13
    endif
        DB 22,20,11,"  &",13,22,22,11
.mtedit DB "00",13
        DB 22,20,12,"  #",13,22,22,12
.tedit  DB "00",13
        DB 0

; bit 0 - подсвечивать (да/нет)
; bit 1 - клавиша "заморожена"
SRGB    DB 1,10,4,128+3,%10  ; DEFB 1,10,4,1,%10
       ; DEFB 1,11,4,1,%10
       ; DEFB 1,12,4,1,%10
        DB 6,10,4,128+3,%10  ; DEFB 6,10,4,1,%10
       ; DEFB 6,11,4,1,%10
       ; DEFB 6,12,4,1,%10

        DB 14,8,7,128+5,%11   ; DEFB 14,8,7,1,%11
       ; DEFB 14,9,7,1,%11
       ; DEFB 14,10,7,1,%11
       ; DEFB 14,11,7,1,%11
       ; DEFB 14,12,7,1,%11

        DEFB 11,8,2,1,%11

        DEFB 1,8,4,1,%11

        DB  21,12,3,1,%11
        DB  21,11,3,1,%11
        DEFB #FF

; x, y, номер опции, кол-во, текущий
; адрес обработчика OnClick
RRGB    DEFB 4,10,0,3,2;0
BRIGHT  EQU $-1
      ;  DEFW MixRgb
        DW MixRgb_x
        DEFB 9,10,3,3,2;0
FLASH   EQU $-1
      ;  DEFW MixRgb
        DW MixRgb_x
        DEFB #FF

; x, y, длина, высота, цвет, флаг
; адрес спрайта кнопки
; флаги:
; Bit 0 - клавиша нажимается (yes/no)
; Bit 1 - клавиша "заморожена"

HRGB    ;db "C", 0
    ;dw RAYS
    ;db "B", 0
    ;dw SQS
    db "E", 0
    display "e ",HRGB
    dw 8
    db "T", 0
    dw 10
    db "B", 0
    dw 12
    db "W", 0
    dw 7;13
    db "M",0    ; обнуление маски ; /DA
    dw 128
    db "C", 0
    dw 254
    db #FF

BRGB
rgbink  DEFB 6,1,2,2,7*8,%10
        DEFW OFFS
        DEFB 8,1,2,2,1,%10
        DEFW OFFS
        DEFB 10,1,2,2,2,%10
        DEFW OFFS
        DEFB 12,1,2,2,3,%10
        DEFW OFFS
        DEFB 14,1,2,2,4,%10
        DEFW OFFS
        DEFB 16,1,2,2,5,%10
        DEFW OFFS
        DEFB 18,1,2,2,6,%10
        DEFW OFFS
        DEFB 20,1,2,2,7,%10
        DEFW LASTONS ;OFFS ;ONS
        DEFB 22,1,2,2,7,%10
        DEFW ONS ;OFFS

rgbpap  DEFB 6,3,2,2,7*8,%10
        DEFW LASTONS ;OFFS ;ONS
        DEFB 8,3,2,2,1,%10
        DEFW OFFS
        DEFB 10,3,2,2,2,%10
        DEFW OFFS
        DEFB 12,3,2,2,3,%10
        DEFW OFFS
        DEFB 14,3,2,2,4,%10
        DEFW OFFS
        DEFB 16,3,2,2,5,%10
        DEFW OFFS
        DEFB 18,3,2,2,6,%10
        DEFW OFFS
        DEFB 20,3,2,2,7,%10
        DEFW OFFS
        DEFB 22,3,2,2,7,%10
        DEFW ONS ;OFFS

rgbbord DEFB 6,5,2,2,7*8,%10
        DEFW ONS
        DEFB 8,5,2,2,1,%10
        DEFW OFFS
        DEFB 10,5,2,2,2,%10
        DEFW OFFS
        DEFB 12,5,2,2,3,%10
        DEFW OFFS
        DEFB 14,5,2,2,4,%10
        DEFW OFFS
        DEFB 16,5,2,2,5,%10
        DEFW OFFS
        DEFB 18,5,2,2,6,%10
        DEFW OFFS
        DEFB 20,5,2,2,7,%10
        DEFW OFFS
        DEFB 22,5,2,2,7,%00
REALRGB EQU $-2
        DEFW DTRS
        DB #FF

; 128 colors

PRGB128 LD IX,WRgb128
        CALL Win_
        AND A
        JP Z,CH16128
        LD A,(ARW_XC)
        LD (ax),A
        LD D,A
        LD A,(IX+0)
        CP D
        JP NC,z2
        ADD A,(IX+2)
        CP D
        JP C,z2
        LD A,(ARW_YC)
        LD (ay),A
        LD D,A
AZ      LD A,(IX+1)
        CP D
        JP NC,z2
        ADD A,(IX+3)
        DEC A
        DEC A
        CP D
        JP C,z2
        LD DE,(ax)
        CALL RASCHA
cl      LD A,0
        LD (REALRGB),A
        CALL ReMixRgb
        CALL ReDrawC
z2      CALL CLOSE
        RET

ax      DB 0
ay      DB 0

M128    LD DE,(ARW_XC)
        CALL RASCHA
        LD A,(HL)
        LD (cl+1),A
        RET

Acr     LD D,(IX+0)
        INC D
        LD E,(IX+1)
        INC E
        PUSH DE
        CALL RASCH
        LD B,8*8
Acr4    PUSH BC
        PUSH HL
        LD B,16
        LD A,#FF
Acr3    LD (HL),A
        INC HL
        DJNZ Acr3
        POP HL
        CALL INC_Y
        POP BC
        DJNZ Acr4
        POP DE
        LD A,D
        LD D,E
        LD E,A
        CALL RASCHA
        LD C,0
Acr2    LD B,0
        LD D,#80
Acr1    LD A,B
        add a,a ; SLA A
        add a,a ; SLA A
        add a,a ; SLA A
        OR C
        OR D
        LD (HL),A
        INC L
        LD A,D
        XOR #40
        LD D,A
        CP #80+#40
        JR Z,MPS
        INC B
MPS     LD A,B
        CP 8
        JR C,Acr1
        INC C
        LD DE,32-16
        ADD HL,DE
        LD A,C
        CP 8
        JR C,Acr2
        RET

WRgb128 DEFB 7,3,18,12,7,7,%00000110
; Bit 0 - окно с заголовком/без
; Bit 1 - "перерисовать" окно да/нет
; Bit 2 - тискать окно по экрану да/нет
; Bit 3 - выход из окна-ткнуть только лишь за пределами (CANCEL)
        DEFB 0
        DEFW TRGB128      ; объект-текст
        DEFW SRGB128      ; объект-подсветка (выборка)
        DEFW Nil          ; горячие клавиши
        DEFW Nil          ; объект-кнопки (выборка)
        DEFW Nil          ; объект-флажки
        DEFW Nil          ; объект-радио кнопки
        DEFW Nil          ; ползунок
        DEFW Acr          ; вызов при создании
        DEFW M128         ; вызов на "прерываниях"
        DW #FFFF

TRGB128
        DB 22,8,10
    if rus
        db #92,#a8,#af,#a0,#20,#aa,#e0,#e3,#e2,#ae,#20,#3e,#3e,#3e,13;"Типа круто >>>",13
    else
        DB "Go back >>>",13
    endif
        DB 0

; bit 0 - подсвечивать (да/нет)
; bit 1 - клавиша "заморожена"
SRGB128 DEFB 8,10,9,1,%11
        DEFB #FF
;-----------------------------------------------------------
; -- Мини-RGB меню (по клавише K) -----------------------
;-----------------------------------------------------------
SETc    CALL ReMixRgb
        JP ReDrawC

Col     PUSH IX
        LD IX,TCol
        CALL POPUP
        CALL GETBLK
        LD DE,DTRS
       ; CALL LoadWS

        call LoadSPR_   ; LoadSPR

co      LD A,(REALRGB)
        CALL SETc
co_     LD A,(REALRGB)
        CALL setv

col     LD BC,#BFFE
        IN A,(C)
        BIT 2,A
        JP NZ,ec

        LD BC,#F7FE
        IN A,(C)
        BIT 0,A
        JP Z,mi
        BIT 1,A
        JP Z,pi
        BIT 2,A
        JP Z,Mp
        BIT 3,A
        JP Z,Pp
        BIT 4,A
        JP Z,sb

        LD BC,#EFFE
        IN A,(C)
        BIT 4,A
        JP Z,sF
        BIT 0,A
        JP Z,tof
        BIT 1,A
        JP Z,ton
        JR col

tof     XOR A
        LD (INK),A
        LD (PAPER),A
        LD (FLASH),A
        LD (BRIGHT),A
t_      LD BC,#EFFE
    IN A,(C)
        BIT 0,A
        JR Z,t_
        LD A,7
        LD (REALRGB),A
        JP co

ton     LD A,8
        LD (INK),A
        LD (PAPER),A
        LD A,2
        LD (BRIGHT),A
        LD (FLASH),A
T_      LD BC,#EFFE
        IN A,(C)
        BIT 1,A
        JR Z,T_
        CALL MixRgb
        CALL ReDrawC
        JP co_

sb      LD A,(REALRGB)
        xor #40
        LD (REALRGB),A
s_      LD BC,#F7FE
        IN A,(C)
        BIT 4,A
        JR Z,s_
        JP co

sF      LD A,(REALRGB)
        xor #80
        LD (REALRGB),A
f_      LD BC,#EFFE
        IN A,(C)
        BIT 4,A
        JR Z,f_
        JP co

pi      LD A,(REALRGB)
    ;<trefi>
        ; AND 7
        ; INC A
        ; AND 7
        ; LD C,A
        ; LD A,(REALRGB)
        ; AND #FF-7
        ; OR C
    ld  c,a
    inc a
    xor c
    and 7
    xor c
    ;</trefi>

        LD (REALRGB),A

p_      LD BC,#F7FE
        IN A,(C)
        BIT 1,A
        JR Z,p_
        JP co

Pp      LD A,(REALRGB)
    ;<trefi>
        ; AND #38
        ; RRCA
        ; RRCA
        ; RRCA
        ; INC A
        ; RLCA
        ; RLCA
        ; RLCA
        ; AND #38

        ; LD C,A
        ; LD A,(REALRGB)
        ; AND #FF-#38
        ; OR C
    ld  c,a
    add a,8
    xor c
    and #38
    xor c
    ;</trefi>
        LD (REALRGB),A

P_      LD BC,#F7FE
        IN A,(C)
        BIT 3,A
        JR Z,P_
        JP co

Mp      LD A,(REALRGB)
        ;<trefi>
    ;AND #38
        ;RRCA
        ;RRCA
        ;RRCA
        ;DEC A
        ;RLCA
        ;RLCA
        ;RLCA
        ;AND #38
        ;LD C,A
        ;LD A,(REALRGB)
        ;AND #FF-#38
        ;OR C
    ld  c,a
    sub 8
    xor c
    and #38
    xor c
    ;</trefi>
        LD (REALRGB),A

M_      LD BC,#F7FE
        IN A,(C)
        BIT 2,A
        JR Z,M_
        JP co

mi      LD A,(REALRGB)
        ;<trefi>
        ; AND 7
        ; DEC A
        ; AND 7
        ; LD C,A
        ; LD A,(REALRGB)
        ; AND #FF-7
        ; OR C
    ld  c,a
    dec a
    xor c
    and 7
    xor c
    ;</trefi>
        LD (REALRGB),A

m_      LD BC,#F7FE
        IN A,(C)
        BIT 0,A
        JR Z,m_
        JP co

ec      CALL CLOSE
        POP IX
        RET

TCol    DB 0,0,2,2

GetATR  LD A,(REALRGB)
        RET
endRGB

    display "RGB1: ",/a,endRGB-ERGB
