From 61a8a3c5d28da6e5e5a8a2df1fe6aad15fb67c55 Mon Sep 17 00:00:00 2001 From: antoniovillena Date: Wed, 16 Aug 2017 00:11:34 +0200 Subject: [PATCH] =?UTF-8?q?A=C3=B1ado=20bezel=20en=20lanzador=20vertical?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- firmware/bezel.png | Bin 0 -> 1316 bytes firmware/bezel.rcs.zx7b | Bin 0 -> 655 bytes firmware/firmware.asm | 131 ++++++++++++++++++++++++++++------------ 3 files changed, 94 insertions(+), 37 deletions(-) create mode 100644 firmware/bezel.png create mode 100644 firmware/bezel.rcs.zx7b diff --git a/firmware/bezel.png b/firmware/bezel.png new file mode 100644 index 0000000000000000000000000000000000000000..8fae3ac12736388126ab11f93a13de226708c19e GIT binary patch literal 1316 zcmYL}YfO`O7{#Ce`?j@|0_9>;Yb`}CBeg&sR~f{%z*Zb$xfqG4R3}O#lLjVMVDf?v ziy4N1F5N^Zm75MKM5baUzKTG-#fES(NU#G^n0P4;fxw`vpZ4W z;4%QfDPA6%41nw>kQCg`4L!QucJWdqq{e*?Nzx9mfz4(EJ3gELonUUT3xLucA1h5& zqj#60b2m$wKNZ$H8Orl>%oCK<=TyHL!c?B8FMllG#3G%vKdTeFj(w`LoHOl8$(-6- z@YH#JZhrpo=@YAyFNU1=c{Xl$*R6cW@346;FYdw3--T!%2buULT+TOPM!p6<@mDP8 zVRn_fyqxQ%Gb|QPJzc#bBpQn=DD)oby%d+h(D^HB$w9|5J~?8<3;y5{L5gTx9fOLJ zZ|*D{q-MR!2lJlEcaFgyLE_d)C0r;T=By~v!a)&r4`8i16I&1Nf>EYo3y5RDj3Y|c zL)++NlM~DYWVK!m?%diI58VX(0$~9Tq<325{UQu;XM0pB6RfoHvwSiOQ(Y5E{Kjf` zy{dL2!v9(jK~0_$n=I5pM4&*@1L=89bz`1Q(s)@FiNB;1Rf6NFc(IxVeo{A~}fY1<8o@ zN#?Wn-r=|8#3EP&KosH-Q(Ps$iJS)%vh>AV6v&Bb(5>x43hdcs)5P)%T##K39rL+@ zOOf!F8|X*|(qUjbj5$jDmFzDiBil|^!c4ZD!Gy|wL4kQU3Cdf4{3;%My~$xQD3z(u=4aOVD!y$W%1t^#mT`>;lG7Ap6yk*nDWM)};5#E|Tbd0*i!fU&zhzNnoNfd;tz0WQr!h55KA+jzYSdvM@UK)W2VDJm1M&J*nY|O^2AKKW&5KY_>#8$FmE#a8Pr&H+7k~Z9= z-d^e5e{LHrkfDWwOz|k5NO3($!^dclh$LTcy**4-EeRrxd2b8Pj8qPrg{bBjD=BBh zd^OFd-q9nn-~UP71T+&Av5J`8J&w8iN-%|+v%!m}`-+J~93odqSCX))OYxgnuDe~9 zgsE5+FsOgo)a^ub_`E90q$@z@G9^ZR07uy$R8jYB@oh!)aFe`Og& zt(u|I;Rpyn!igIS_)u>P$D_`#Q$kWHt28=Cx*Ljwn-63pm5ftd#ALz!Fikj~>h)8B zJ6a0C$C;#?dShPziL0r`GOB?2ck^qEq^S=RC-!fAv<0ry6|1eYb>B;U#6}JWS8-6a znxU8roLD&u|IoRu`7=A<0Ory_Q_5K8^~RnS58l#sg$?y(s3!M`Jf7R<4&vhyV+}H8 F>3>3x783vf literal 0 HcmV?d00001 diff --git a/firmware/bezel.rcs.zx7b b/firmware/bezel.rcs.zx7b new file mode 100644 index 0000000000000000000000000000000000000000..8e772455e78920d0f064b6205e857cf37dd87501 GIT binary patch literal 655 zcmV;A0&x9cRUIPrkL(o?CWQm#JWGB6Q~W2Ye}6SH;0of-_Jdn!0S7+-MSmU!vIKuQ zVD}#YFC5jez$58j0Nl;f#sJ;^f2Asl4}a@FnxGG>pOESjiulB0=VVy=`u=<{u>6tg zo`?Vep#BZ~@;ILa(-{CCUs;(zpb0F@NURt?M*~L-02ihbh�ePktT_4jz6E1ONk- zU}Eg-*uW!x0DJ!fsK8J#2pEiD*tj5^%mBb(%$y(yxY%Hi=oEibr7;k@03a$50CP9p zpdTRxe6s8xKj!giL%bh_f9T~G3|u&TlbTO_JksHV$L|1<|L@0xF~aD*E$a*j@9Y-i z6%>FSrx-*$;ynELg!zEvkN|6{0ssoXR`rlm0EPVt843IBo;3su^gkX93+13kCol5&*w`04n}|JRU^|04N*?=;6cwf&eXn0g3qp1PJip z1i%0S4={gJ@qhcEia$7_f2#nA54eA>&%!D=WcvF4d;&N>0st6u00s;Q0106a2MPw9 z0RsmP1Uv8#4?m=TKR>bn3HlflaQMi`4~U4EFdz6hFmS+t0|Wqg2wVsN7XSYI0Ez?v z_5VKrWuQ3t`0xP2000&PoxVgCpCv&bdf(2VLLZ-=P)9;S9}!0%s#E|19~Y{hA94VS p07oAiUSDIBL_q*q2Om)Y8bL!SLjgq}0XRfZ2L}NMMMVI>q5<&*1%3bk literal 0 HcmV?d00001 diff --git a/firmware/firmware.asm b/firmware/firmware.asm index a6509af..319e56a 100644 --- a/firmware/firmware.asm +++ b/firmware/firmware.asm @@ -284,32 +284,7 @@ start2 ld a, (hl) start3 ld hl, finlog-1 ld d, $7a call dzx7b ; descomprimir - inc hl - ld b, $40 ; filtro RCS inverso -start4 ld a, b - xor c - and $f8 - xor c - ld d, a - xor b - xor c - rlca - rlca - ld e, a - inc bc - ldi - inc bc - IF vertical=0 - bit 3, b - jr z, start4 - ELSE - ld a, b - sub $58 - jr nz, start4 - dec a - ENDIF - ld b, $13 - ldir + call drcs ld bc, zxuno_port out (c), a ; a = $ff = core_id inc b @@ -435,8 +410,13 @@ star16 djnz star18 ld a, d or e jr nz, star18 + IF vertical=0 ld hl, $0017 ; Si se acaba el temporizador borrar ld de, $2001 ; lo de presione Break + ELSE + ld hl, $001b ; Si se acaba el temporizador borrar + ld de, $2002 ; lo de presione Break + ENDIF call window star17 ld hl, (joykey) inc h @@ -477,11 +457,7 @@ star19 sub $80 sub $0c-'1' star20 jp z, blst sub $1d-$0c - IF vertical=0 jp z, launch - ELSE - jr z, star20 - ENDIF cp $17-$1d jr nz, star19 ELSE @@ -688,7 +664,7 @@ bios7 dec c ld b, (hl) call chcol defw $1201 - defb %00111001 + defw %0100011100111001 ld hl, (menuop) ld l, 0 push bc @@ -837,6 +813,54 @@ sel04 ld a, (de) djnz sel04 exx ret + ELSE +launch ld (tmpbuf), a + ld hl, finbez-1 + ld d, $7a + call dzx7b ; descomprimir + call drcs + ld hl, bnames-1 + ld bc, $20 + ld a, c +laun0 add hl, bc + inc e + cp (hl) + jr z, laun0 + inc a + ld (tmpbuf), a + inc e + ld a, e + ld l, a + cp 24 + jr c, laun1 + ld a, 24 +laun1 ld h, a + ld (items), hl + ld hl, $0104 ; coordenada X + push hl + ld iy, (items) + ld hl, cad62 + ld (cmbpnt), hl + ld iy, indexe + ld ix, cmbpnt + ld de, tmpbuf + ld b, e + ld hl, bnames + call addbl1 +laun2 ld c, $20 + add hl, bc + call addbls + jr nc, laun2 + ld (ix+0), cad6&$ff + ld (ix+1), cad6>>8 + ld (ix+3), a + ld a, (items+1) + ld e, a + ld d, 24 + call chcol + defw $1203 + defw %0111100001000111 + jp bls375 ENDIF ;++++++++++++++++++++++++++++++++++ ;++++++++ Start ROM ++++++++ @@ -2396,7 +2420,7 @@ upgr75 call popupw rrca call chcol defw $1201 - defb %00111001 + defw %0100011100111001 ret nz jp c, tosd call loadta @@ -2809,13 +2833,14 @@ bls37 ld (ix+0), cad6&$ff ld d, 32 call chcol defw $1a02 + defw %0100011101001111 ELSE ld d, 25 call chcol defw $1402 + defw %0100011101001111 ENDIF - defb %01001111 - ld a, (cmbpnt+1) +bls375 ld a, (cmbpnt+1) rlca ld hl, (active) ld a, h @@ -3402,7 +3427,7 @@ combo7 ld de, (corwid) ld l, a ld h, e ld e, 1 - ld a, %01000111 + ld a, (colcmb-1) call window call waitky ld hl, (offsel) @@ -3657,6 +3682,9 @@ chcol pop hl ld a, (hl) inc hl ld (colcmb), a + ld a, (hl) + inc hl + ld (colcmb-1), a jp (hl) ; ------------------------------------- @@ -3764,7 +3792,7 @@ popup2 ld ix, cad22 ELSE defw $0b07 ENDIF - defb %01001111 + defw %0100011101001111 pop hl pop de inc l @@ -4004,6 +4032,34 @@ get16 ld b, 0 jr nc, get16 ret +drcs inc hl + ld b, $40 ; filtro RCS inverso +start4 ld a, b + xor c + and $f8 + xor c + ld d, a + xor b + xor c + rlca + rlca + ld e, a + inc bc + ldi + inc bc + IF vertical=0 + bit 3, b + jr z, start4 + ELSE + ld a, b + sub $58 + jr nz, start4 + dec a + ENDIF + ld b, $13 + ldir + ret + ; Parameters: ;(empstr): input string ; Returns: @@ -4085,7 +4141,8 @@ finav incbin logo256x192.rcs.zx7b finlog incbin strings.bin.zx7b ELSE - incbin logo192x256.rcs.zx7b + incbin bezel.rcs.zx7b +finbez incbin logo192x256.rcs.zx7b finlog incbin strings.bin.zx7b ENDIF ENDIF