From 29a6aa574a0b68788fb8ac0e548510f0fc21a46b Mon Sep 17 00:00:00 2001 From: milang Date: Thu, 12 Sep 2019 19:48:53 +0200 Subject: [PATCH] minor corrections, and some are around dma --- libfxengine.a | Bin 10812 -> 10600 bytes src/triangle.c | 7 +++---- src/zbuffer.c | 11 +++++++---- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/libfxengine.a b/libfxengine.a index 9b041a0da3a99d8ee9e5f41a16b294c188f0dc4d..07731ebb79aa47bca3f29fa09c16683de19b3364 100644 GIT binary patch delta 908 zcmah{O=uHQ5T3W$Y<{-Yw6;l`#JbrHNmC2i{MBs)@drc@X)7L75LQgkDhSpJy+{Ir z1VOYJ6)$21vED4MNDoCk6!e&S5_%~JT6&5g@uJjuNvdfs4t(?Gn>TNF-uGtd)cVQ$ zfr61r=m{gGD7wO})hkNcFzQ)FG2H;r2OtbLVE+uz3i&j^|KRHY;P4-8AnXCy!QDSR zd!{MB533g_8POA~(dIGP>e0l_Qo8_^Z4gomv{0imHZ}OK# z^Fp!9yk6`!Qz7%Pr?~50?V1QOxD+Tk3Y)m>vzUN$5v^CQpQiKO0F2_@{99P*i(r{` zquv|D6XMY<1Srk7B?348(^5TZII$UrXytXbCSO9u=Ie?QbGBy7-ascW)Bl!v!Vx!A zh!zPFuEhoit~U9L^m z4q4}eKbf$9&N@4g5egUSeBDTCZZ{eWK$92R_?gZXfl<; z?|z?{Na+U2v6sEEeudpExeoD1lSkq&HhSW3S6yT3#BAdBUCBAWr4h)NYPmA=r-R4k z8TP6=F^g-CTeuo2x{T&MN;n;Tj27!+fJ1|4M4J4a81F9#OviR}0}qX)qALJ@#^kqEOn|#x8QLi2$x;0tGX`F|dJktuEr}7QjZW zbM>ELz2?5-i|}bBep#)Lr`3jdyE}eXR1e%MTsKE#z`l3<1M^$cI)COwM5Z9D=!5Q9 zrhWscdI{`tlg3V4y&<7U0iq261nZU(2hk`{7$Ztt-z>`JopSwX`h0IY3=O9eL#bpc zoy@R#;&ABA-2fJSmLBH-tjup#NuK4+68`~@oJ^EF9Bi^(vyW`DK}pt$dQh%~9ekZd zSP)fA<(v6Mta@0Mm-ru8b+Ld;a_b6qDjj9o89EjfY*Ul~i*v_0E7h{D!$erCj>y*v zR|}(sZtYd`Pr`NOwU;d+ZYqugi&6Tt@d|#kg3na&yA?cJ!Ix3dUi^==B<Jx5}+*beW@a-}-tuL-UJ8B~20?W&dCV&ODA}`u9HxlFNu|y`x`g|^S#TOG%kh+pL z2zowCafrxAe8<((gnNdM%T*ayj@i&T- F{{U#Z%h&(_ diff --git a/src/triangle.c b/src/triangle.c index d9f6645..fae81ef 100644 --- a/src/triangle.c +++ b/src/triangle.c @@ -1,5 +1,5 @@ #include -#include +#include #include #include @@ -15,10 +15,9 @@ static uint32_t frame_interval_max=1; #endif -void fe_update(const uint32_t libprof_channel) +void fe_render_update(const uint32_t libprof_channel) { //dupdate(); - #ifdef USE_LIBPROF // gestion du temps avec libprof if (prof_elapsed) @@ -213,7 +212,7 @@ void fe_display_triangle(const fe_triangle * face) vy /= (double) face->s3->z / ((1 - vy) / face->s1->z + vy / (double) face->s3->z); */ // Affichage du point - const uint8_t color = bitmap_get_pixel_r(face->texture, vx2, vy2); + const uint8_t color = fe_texture_get_pixel_r(face->texture, vx2, vy2); if (color >> 1) { diff --git a/src/zbuffer.c b/src/zbuffer.c index 217bda9..1b0657e 100644 --- a/src/zbuffer.c +++ b/src/zbuffer.c @@ -8,7 +8,7 @@ #include #include #include - +#include static const int size_uint32 = fe_width * fe_height; @@ -21,19 +21,22 @@ static int32_t *zbuffer = (void *)0x88080000 - (((size_char >> 5) << 5) + 1); // gint doesn't provide any prototype for that function which is implemented - +// AND THE DMA STILL DON'T WOOORK :( extern void dma_memset(void *dst, uint32_t l, size_t size); + void fe_zbuffer_clear() { uint32_t indice = 0; - +/* if (isSH3()) +*/ for (indice = 0; indice < size_uint32; indice ++) zbuffer[indice] = fe_max_dist; +/* else dma_memset(zbuffer, fe_max_dist, size_char); - +*/ } bool fe_zbuffer_set_px(const uint32_t x, const uint32_t y, const uint32_t dist)