From babde60c83025c9263be119a5730b03a34137561 Mon Sep 17 00:00:00 2001 From: bryan Date: Tue, 6 Sep 2022 22:14:02 -0400 Subject: [PATCH] fix win display positioning --- bin/WORDLE.8xp | Bin 44228 -> 44151 bytes bin/WORDLE.bin | Bin 44152 -> 44075 bytes bin/WORDLE.map | 62 ++++++++++++++++++++-------------------- obj/src/main.c.src | 69 ++++++++++++--------------------------------- src/main.c | 5 ++-- 5 files changed, 50 insertions(+), 86 deletions(-) diff --git a/bin/WORDLE.8xp b/bin/WORDLE.8xp index 0816d7ddea7bb9b65445589d89f856a8b4293141..5ed41bce2276e90cd0f4f5da84b45020e0e45fc5 100644 GIT binary patch delta 896 zcmZ{iZAep57{|}KxI1^(kk!y>NxKLsE%SwhFffG)34t}%76}f7nvgcB4@NRANeBXK z9V-fo!U$HAtJ!5rQF*e=mlHcHA;VSsaK9v3fg%XoI+LmQOXtJo{GR83f9KrGGd{*9gTEJFu(CV)%hIRh-3PY_ULf&XO@<+>wcK>J#Hz%V)*uX8x z=rU~Jmt-og$Vh<;ux6NY3(yfyCP~2)8v50w5M6-AqMdxGh!+I_%o$=g0MU}T)p!bk zS>reMP{c9-6q3t=Y()#>#zZoiYiv&Sf2{ROSs%GIIRu zRykaFgi+V}x4ZC*4T%fCQb}BROeJyQah0SVPcUMRS@tJRH&NeoJ)TN=R7_Z6>t-SW zh?xVcVTo2l2vD2$BDA5u+Ji73m1VZ-lM;;W=eOj!3j*746h#qedZz`!Imoh5Rg=BN8gopD+Jx51T&`C+ZhU;Q^GV z-;RC@yI~F6?SWM(-gYE4A*qodhP44A|1mt&n@o2GX)I*P5>nxq*C!UA%LMrj7_0tk&QFos9bu zf<<4+@(In%wP99J$hiR;n&v_I3l;uiC{Cwzy1dc Cg{2Gt delta 955 zcmZ9KUr19?9LLYOxy{|Rbm4NdBrgkRu0JYDU_lB-1cEr03ls-FG^u3Ji=x>g3W9;O z4)s=1_F~Mo<)7h0pr=GkPkB}Y%U0a-7AONDY&qK2S#CPIa4+ZcJKx{uo^$VsE^@Cv zaJOp;Tpl&(^~kMF=7z>ofL*k-ryndVt4dY0Ht8ie1a;wl8O(u!qDJ^$df)ddVQL3o|Ko65iK&l~-s89z%cz-+) zF+&aja)Qy(X!xo;P$n060CYLRb-+roK%_$=${{L-jZv6nN!HDhCTS{M8H=03#<+&{ z>ow;A2uX2in&??p6c32u%BYY?CRgM7$PSRo>QmXARJJpnMftKq6{|{NV~pKVR4u#g zeCwsc9L^iy!wH6!xljX7D zB%{n)Y?$+HJFHm7$eG!@73cag8?s^*o62m+igz)}NUT_sC27J1jF=I^TB`%qhM18hc* za=Un?KVAKebjl;Fcv^WD-bDA6=b(!{i%>qVee%tW{~!O~?Lg^0Nad&I+N;Q!TtPFG%FOkBWhkyiGWmg4d(y zis~c0i>x~*U=V54TK=n_>J3Uobhn*tv8{+v6Lt_(Qp>C;3`}8z>PA|&-AZskq7k$<=%Pq;Ly&^N z+D<=I6hc&NDx=xBMG<-WF@H|%*%B-qYcGZZDY{UsV0SvJs}9Y@$GqS7zR&q)IKL;j zt_ki^3EUeh-R9WsjggmDj{LH6q9+t+;y$S%t(KcnQ3b5E%&1hHQ_(Fr4XgXlanmrE zFbtCakVbyg>%078b?27tCHQS3Ylz_@dY6r!kILT zY-dAi{&jv{W}1srhOs~ukFd5l$qLKpVtLAx7pB@DRGHZrY*VPX4$Ri&`OjH=n@0oqg2@`d9SVIDpSJ~Yh)r_RkO02I)cPfLeHkI+n7{!(Eb_jL5Ej9b+tdH;#*I2>v5%g z$P?9Cza%qV7IL+Z3f7jSW$ZHA;wZ5A`Y2&*N{-^E`Ye})f%9x*XJwsUJ>+0|}!4HQ8Ln~v^oXS(U?;lTO+&gb_z=iGbx=DE#z z?okOFQUNV|tFP>p9_t*WJPuj(DX8u6hJj!UkRS2o-8Z&~vy7y9OU{tI!kH zG*a-AmUP-hh2->7YO(@gftm(L1q2EesvwY#sDU*b5k@O1w>tWlB8_y@9ZoJ^5lkzs^#*1tvH!g8wnWe+K>BpYJg?}a~TzJJtJ#mK% zuO&HLc%5~{B#GT!_!nExj$57hcaq47w|39s#D9`JPOPz%IExc={ym2Sr?TWp+}(lG z{D})Wu#qh#F66-bSxQJ8*pwux#n~(|M~Hoi8%?x*rWPNJd6IH2BeM30C?IAIMDqN! z3PONB>Fz==x}rZ1ucK%BR^vrKWxuAXVB(A)Wu?_{b?o8kTX@4jyu69#(vHJAq^4bh z_t7guE^0NLgPm+<<#Jx5uZFx#uU!lj8}C>@+Jfc}qz9$*C*ecn=MSOFdjfHnZ$ZGrypP-EN(R^`;3U6(} zikm*`lr1QAEJaiEb>!OsHS61>y4fYPoL;Ew8K8t6Gb^LCbgQ3EtL;%f-&o1`XzJ{j qK~_-6SU;7g3GAh0beNKbVOr@OY|g0b=7;R!8@o7V7rzUIF!`qzs9 diff --git a/bin/WORDLE.map b/bin/WORDLE.map index c7c14f8..d1e18ce 100644 --- a/bin/WORDLE.map +++ b/bin/WORDLE.map @@ -7,9 +7,9 @@ Section Base Top High Length .init.reruncheck D1A933 D1A933 0h .init D1A933 D1A95D 2Ah .fini D1A95D D1A991 34h -.text D1A991 D1B641 CB0h -.data D1B641 D25492 9E51h -.rodata D25492 D254F7 65h +.text D1A991 D1B5F4 C63h +.data D1B5F4 D25445 9E51h +.rodata D25445 D254AA 65h .init_array 000000 000000 0h .ctors 000000 000000 0h .dtors 000000 000000 0h @@ -33,21 +33,19 @@ _os_DisableHomeTextBuffer = D1A991 _os_EnableHomeTextBuffer = D1A9A3 _random = D1A9B5 _srandom = D1AA0C -__state = D1B641 +__state = D1B5F4 _os_FontSelect = 021E28 __frameset = D1AA23 __frameset0 = D1AA31 -__iand = 000134 -__idivs = 00013C __imulu = 000158 __iremu = 000170 __ishru = 000184 __sand = 000200 __setflag = 000218 -.missingappvar = D25492 -.libloadname = D25497 +.missingappvar = D25445 +.libloadname = D2544A .libloadnamelen = 000007 -.webaddress = D2549F +.webaddress = D25452 __start = D1A933 ___exithl = D1A95D skip._exit = D1A95D @@ -65,33 +63,33 @@ _clearSquare = D1ABAA _fillSquare = D1AC1A _dispLetter = D1AC8F _winLossDisplay = D1ACF0 -_enterLetter = D1ADC0 -_backspace = D1ADF9 -_handleKeys = D1AE15 -_inDictionary = D1B029 -_inSelected = D1B0E6 -_resetGame = D1B1A3 -_gameWin = D1B1E2 -_gameLoss = D1B2DF -_evaluateGuess = D1B3DC -_init = D1B5B9 -_mainGame = D1B5DB -_main = D1B626 -_SELECTED = D1B651 -_DICTIONARY = D1E36A +_enterLetter = D1AD73 +_backspace = D1ADAC +_handleKeys = D1ADC8 +_inDictionary = D1AFDC +_inSelected = D1B099 +_resetGame = D1B156 +_gameWin = D1B195 +_gameLoss = D1B292 +_evaluateGuess = D1B38F +_init = D1B56C +_mainGame = D1B58E +_main = D1B5D9 +_SELECTED = D1B604 +_DICTIONARY = D1E31D _rowPtr = D052C6 _colPtr = D052C7 _answer = D052C8 _guess = D052CE -L_.str = D254B4 -_YOU_WIN = D25485 -L_.str.1 = D254BD -_YOU_LOSE = D25488 -L_.str.2 = D254C7 -_PLAY_AGAIN = D2548B -L_.str.3 = D254E3 -_reveal = D2548E -_gameRunning = D25491 +L_.str = D25467 +_YOU_WIN = D25438 +L_.str.1 = D25470 +_YOU_LOSE = D2543B +L_.str.2 = D2547A +_PLAY_AGAIN = D2543E +L_.str.3 = D25496 +_reveal = D25441 +_gameRunning = D25444 _prevkey = D052D4 _#gfx_Begin = D1A901 _#gfx_End = D1A905 diff --git a/obj/src/main.c.src b/obj/src/main.c.src index 3f67301..e647974 100644 --- a/obj/src/main.c.src +++ b/obj/src/main.c.src @@ -381,25 +381,13 @@ _dispLetter: section .text,"ax",@progbits public _winLossDisplay _winLossDisplay: - ld hl, -9 + ld hl, -3 call __frameset - ld hl, (_PLAY_AGAIN) - push hl - call _gfx_GetStringWidth - pop de - ld de, 50 - add hl, de - ld bc, 65535 - call __iand - push hl - pop de - ld hl, 320 - ld (ix - 3), de or a, a - sbc hl, de - ld bc, 2 - call __idivs - ld (ix - 9), hl + sbc hl, hl + push hl + call _gfx_SetColor + pop hl ld a, (ix + 6) or a, a jq z, BB9_1 @@ -408,49 +396,30 @@ _winLossDisplay: BB9_1: ld hl, 130 BB9_3: - ld (ix - 6), hl - or a, a - sbc hl, hl - push hl - call _gfx_SetColor - pop hl - ld hl, (ix - 9) - ld bc, 255 - call __iand - ld (ix - 9), hl + ld (ix - 3), hl dec hl - push hl - pop bc - ld iy, (ix - 6) - dec iy - ld hl, (ix - 3) - ld de, 2 - add hl, de ld de, 102 push de + ld de, 222 + push de + push hl + ld hl, 49 push hl - push iy - push bc call _gfx_Rectangle pop hl pop hl pop hl pop hl - ld iy, (ix - 9) - ld hl, -2 - ex de, hl - add iy, de - lea bc, iy - ld iy, (ix - 6) - add iy, de ld hl, (ix - 3) - ld de, 4 + ld de, -2 add hl, de ld de, 104 push de + ld de, 224 + push de + push hl + ld hl, 48 push hl - push iy - push bc call _gfx_Rectangle pop hl pop hl @@ -462,11 +431,11 @@ BB9_3: pop hl ld hl, 100 push hl - ld hl, (ix - 3) + ld hl, 220 push hl - ld hl, (ix - 6) + ld hl, (ix - 3) push hl - ld hl, (ix - 9) + ld hl, 50 push hl call _gfx_FillRectangle ld sp, ix @@ -9876,10 +9845,8 @@ _prevkey: extern _gfx_SetTextFGColor extern _gfx_Begin extern __sand - extern __idivs extern __setflag extern _srandom - extern __iand extern _gfx_FillRectangle extern _os_FontSelect extern __frameset diff --git a/src/main.c b/src/main.c index ce24993..7778ce7 100644 --- a/src/main.c +++ b/src/main.c @@ -128,9 +128,8 @@ void dispLetter(char letter, u8 x, u8 y) { } void winLossDisplay(u8 pos) { // pos: 0 is top, 1 is bottom - const u16 width = gfx_GetStringWidth(PLAY_AGAIN) + 50; - const u16 height = 100; - const u8 x = (LCD_WIDTH - width) / 2, y = (pos ? 0 : LCD_HEIGHT / 2) + (LCD_HEIGHT / 2 - height) / 2; + const u16 width = 220, height = 100; + const u16 x = (LCD_WIDTH - width) / 2, y = (!pos * LCD_HEIGHT / 2) + (LCD_HEIGHT / 2 - height) / 2; // draw outline gfx_SetColor(BLACK);