Login

Subversion Repositories NedoOS

Rev

Rev 1506 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

;╨┐╤А╨╛╤Ж╨╡╨┤╤Г╤А╤Л ╨┤╨╗╤П ╤А╨╕╤Б╨╛╨▓╨░╨╜╨╕╤П ╨╛╤Д╨╛╤А╨╝╨╗╨╡╨╜╨╕╤П, ╨▓╨╡╤А╤Е╨╜╨╡╨│╨╛ ╤Г╤А╨╛╨▓╨╜╤П (╨╜╨╡ ╨╖╨░╨▓╨╕╤Б╤П╤В ╨╛╤В ╤В╨╕╨┐╨░ ╤Н╨║╤А╨░╨╜╨░)

;╨┐╨╡╤З╨░╤В╤М ╨┐╨░╨╜╨╡╨╗╤М╨║╨╕ ╤Н╨╜╨╡╤А╨│╨╕╨╕ ╨╕ ╨▓╨╡╤В╤А╨░ + ╨╜╨░╨╖╨▓╨░╨╜╨╕╤П ╨║╨╛╨╝╨░╨╜╨┤
DrawEnergyPanel
        call ClearEnergyPanel
       SCRADDR RAMKAX,4
        LD HL,_;#4401
        CALL ENRAMKA
       SCRADDR RAMKAX+16,4
        LD HL,_;#4411
        CALL ENRAMKA
       SCRADDR RAMKAX,6
        LD HL,_;#4601
        ld c,9*3      ;color3 (red)
        CALL ENFAKE ;╤А╨╕╤Б╤Г╨╡╨╝ ╨┐╨╛╨╗╨╜╤Г╤О ╤Н╨╜╨╡╤А╨│╨╕╤О ╤Г ╨║╨╛╨╝╨░╨╜╨┤╤Л
       SCRADDR RAMKAX,6+7
        LD HL,_
        ld c,9*1+0xc0 ;color9 (yellow)
        CALL ENFAKE ;╤А╨╕╤Б╤Г╨╡╨╝ ╨┐╨╛╨╗╨╜╤Г╤О ╤Н╨╜╨╡╤А╨│╨╕╤О ╤Г ╨║╨╛╨╝╨░╨╜╨┤╤Л
       SCRADDR RAMKAX+16,6
        LD HL,_;#4611
        ld c,9*2+0xc0 ;color10 (green)
        CALL ENFAKE ;╤А╨╕╤Б╤Г╨╡╨╝ ╨┐╨╛╨╗╨╜╤Г╤О ╤Н╨╜╨╡╤А╨│╨╕╤О ╤Г ╨║╨╛╨╝╨░╨╜╨┤╤Л
       SCRADDR RAMKAX+16,6+7
        LD HL,_
        ld c,9*6+0xc0 ;color14 (cyan)
        CALL ENFAKE ;╤А╨╕╤Б╤Г╨╡╨╝ ╨┐╨╛╨╗╨╜╤Г╤О ╤Н╨╜╨╡╤А╨│╨╕╤О ╤Г ╨║╨╛╨╝╨░╨╜╨┤╤Л
        LD HL,CUTEAMS
       SCRADDR RAMKAX+1,1
        LD DE,_;#4102
        CALL PRTEAM
       SCRADDR RAMKAX+1,16
        LD DE,_;#4042
        CALL PRTEAM
       SCRADDR RAMKAX+29-6,1
        LD DE,_;#411E
        CALL PRTEAMRIGHT
       SCRADDR RAMKAX+29-6,16
        LD DE,_;#405E
        CALL PRTEAMRIGHT

       SCRADDR RAMKAX-1,0
        LD HL,_;#4000
        CALL PRSTAR
       SCRADDR RAMKAX+30,0
        LD HL,_;#401F
        CALL PRSTAR
       SCRADDR RAMKAX-1,15
        LD HL,_;#4720
        CALL PRSTAR
       SCRADDR RAMKAX+30,15
        LD HL,_;#473F
        jp PRSTAR
       
PRTEAM
        PUSH HL
        call PRTEAM_FindLen
        EX (SP),HL ;hl=teamname, (sp)=nextteamname
;b=teamname len
PRTEAM0 LD A,(HL)
        INC HL
        CALL PR64
        DJNZ PRTEAM0
        POP HL
        RET

PRTEAMRIGHT
        PUSH HL
        call PRTEAM_FindLen
        EX (SP),HL ;hl=teamname, (sp)=nextteamname
        ld a,12
        SUB B ;name len
        RRA
       if !ATM
        RL C
        SLA C ;x phase
       endif
        add a,e
        LD E,A
        jr nc,$+3
        inc d
        jr PRTEAM0

PRTEAM_FindLen
        LD B,TEAMLEN
        ld a,l
        add a,b
        ld l,a
        jr nc,$+3
        inc h
        PUSH HL
        LD A,' '
PRTEAMF DEC HL
        CP (HL)
        JR NZ,PRTEAME
        DJNZ PRTEAMF
        INC B ;1
PRTEAME
        POP HL
;b=teamname len
       if !ATM
        ld c,0
       endif
        ret

;╨┐╨╡╤З╨░╤В╤М ╨┐╨╛╨╗╨╛╤Б╨╛╨║ ╤Н╨╜╨╡╤А╨│╨╕╨╕ ╨╕ ╨▓╨╡╤В╤А╨░
DrawEnergy
        ld a,(wind) ;-46..46 ;TODO ╨╜╨░ ATM ╤И╨╕╤А╨╕╨╜╨░ 58 (╨┐╨╡╤А╨╡╤Б╤З╨╕╤В╨░╤В╤М ╨╕╨╖ 128?)
        add a,windLAwid;47
        ld c,a ;1..46 left, 47 no, 48..93 right
       ;ld c,1;46
        LD HL,windLA
        LD b,windLAwid;47
        LD E,windLAbit;32
PRnrg0
        ;LD A,B
        ;DEC A
        ;CP C
        ;ccf
        ;CALL nrgPLOT
        ;CALL nrgGOLEFT
        LD A,B
        ADD A,C
        CP windLAwid+1
        CALL nrgPLOT
        ;CALL nrgGORIGHT
        DJNZ PRnrg0
windP
        LD HL,windRA
        LD b,windLAwid;47
        LD E,windRAbit;4
PRnrg1
        LD A,B
        ADD A,C
        ;CP windLAwid*2+1;95
        ;ccf
        jr c,$+4
        add a,-(windLAwid*2+1)
        CALL nrgPLOT
        ;CALL nrgGORIGHT
        DJNZ PRnrg1
PRnrgE
        ld a,(powr) ;0..118 ;TODO ╨╜╨░ ╨Р╨в╨Ь ╤И╨╕╤А╨╕╨╜╨░ 148 (╨┐╨╡╤А╨╡╤Б╤З╨╕╤В╨░╤В╤М ╨╕╨╖ 256?)
        ;cpl
        ;add a,windEAwid;119
        ld c,a
        LD HL,windEA
        LD B,windEAwid;-1;#76
        LD E,windEAbit;4
PRnrg2
        ;LD A,c
        ;CP b
         ld a,b
         add a,c
         jr c,$+4
         add a,-windEAwid
        CALL nrgPLOT
        ;CALL nrgGORIGHT
        DJNZ PRnrg2
        RET

MTIDEAD
;hl=name+12
        LD bc,13
        LD A,' ';32
FNDLF   DEC HL
        DEC C
        CP (HL)
        JR Z,FNDLF
;hl=before the last space, c=length
        LD A,C
        LD DE,MESDIE+11
        LDDR
        EX DE,HL
        ADD A,14
        LD (HL),A
MTITLE
;hl=title to add
titlecuraddr=$+1
        LD DE,TITBUF
       
;if too many unprinted titles, overwrite the last one
       ld a,(curdrawingtitle)
       sub e
       neg ;titlecuraddr - drawingtitle
       cp 192
       jr c,MTITLE_nooverwrite
MTITLE_overwrite0
        dec e
        ld a,(de)
        cp 32
        jr nc,MTITLE_overwrite0 ;find len of pre-last message
        ;inc e
MTITLE_nooverwrite
        LD B,(HL) ;len
        INC B
MTITLEC LD A,(HL)
        LD (DE),A
        INC HL
        INC e ;!!!
        DJNZ MTITLEC
        EX DE,HL
        LD (HL),B ;0
        LD (titlecuraddr),HL
        RET

DrawPie
DrawPieaddr=$+1
        LD HL,0
        call DrawPieHL
        LD (DrawPieaddr),HL
        ret;jp PRGA ;set old page