Commit graph

67 commits

Author SHA1 Message Date
f10bb4fe18 WIP alternate imul16
not working at present
2023-02-11 16:03:18 -08:00
839330edb3 fixes 2023-02-05 15:14:24 -08:00
e9f8aa1512 WIP status bar updates 2023-02-05 14:26:58 -08:00
702f7b3598 WIP frame counter for speed readout
not yet doing any of the calc/output or calls :D
2023-01-29 18:50:04 -08:00
ca5db83e8f rethought the rounding function
realized the top bits are not enough, that was a brainfart
doing comparisons now
2023-01-28 16:37:37 -08:00
b55015ff87 no this seems right
but it's still coming out different. wtf am i doing wrong
it's gotta be a brainfart
2023-01-28 14:34:52 -08:00
76715a6151 Adjust rounding, loop exits
Still slight differences between positive and negative Y halves
Not sure what's wrong
2023-01-28 13:34:50 -08:00
b6ddc0d50e update readme & doc comments & vars 2023-01-22 14:34:30 -08:00
7009e16235 fix range checks 2023-01-22 13:56:19 -08:00
0afed893a6 whoops
now produces correct fractal but iterations outside are
sometimes wrong
probably range errrs in intermediate calc
2023-01-22 12:57:52 -08:00
8af3721308 tweaks 2023-01-22 12:47:24 -08:00
57975b7158 not sure what's wrong have to hceck over 2023-01-22 12:02:15 -08:00
1bef004ccd precision cleanup
using 4.12 and 8.24 consistently
2023-01-22 11:17:51 -08:00
ae9dd0674d corrupt! but it produces pixels 2023-01-22 10:42:37 -08:00
b4721ae46b fix pixel shift 2023-01-22 09:37:37 -08:00
dbbec8ed6d ok two things wrong:
1) bit masks are backwards
2) iter always returning 0
2023-01-22 09:34:42 -08:00
d36667938d run it (fails) 2023-01-22 09:13:19 -08:00
efac8f4f62 now writes pixels sorta 2023-01-22 09:09:12 -08:00
a8872b4e66 hmm 2023-01-22 08:34:06 -08:00
2e5f91a0db wip gfx 2023-01-22 08:20:59 -08:00
335c4d2c96 and use display list copy in aligned memory 2023-01-22 07:36:08 -08:00
6fc07b9e65 hmm 2023-01-22 07:23:46 -08:00
9cbcf1cb5a strings fixed but .... something's corrupt in display 2023-01-22 06:35:41 -08:00
0c04e7ddc8 text but it fails cause not ascii lol 2023-01-22 06:12:40 -08:00
7cb879d110 fix graphics set
forgot that the OS copies shadow registers over lol
2023-01-22 05:54:50 -08:00
f22653bd87 wip loop 2023-01-21 19:17:30 -08:00
8044dbfc21 whee 2023-01-07 22:57:18 -08:00
a47836a39a mwahahah 2023-01-07 22:02:26 -08:00
c5a62cfa1d wip 2023-01-07 21:19:40 -08:00
c3c5968749 experimenting with fixed-point log lookup table
probably won't be enough precision to work with
at a size that fits in memory :D
2023-01-07 20:32:59 -08:00
f1adffd175 asdlijf 2023-01-07 20:11:52 -08:00
a34687ba25 hmm 2023-01-07 20:06:12 -08:00
38005a6f7d hmm 2023-01-07 19:36:11 -08:00
badc730f2b definitely too long :D 2023-01-07 18:37:55 -08:00
fe23193ce9 woot this one works but is too huge 2023-01-07 18:33:06 -08:00
7da3993bfd wip 2023-01-07 18:30:32 -08:00
a6c49a2ef9 oh ho 2023-01-07 17:52:14 -08:00
d32b630320 woo 2023-01-07 17:37:41 -08:00
49831dc048 wip logs 2023-01-07 17:20:18 -08:00
b36ab77e97 update readme 2023-01-06 17:28:35 -08:00
32bd5a540c flesh out the mandelbrot iteration loop
some bits i missed increased total to:
1939 - 3007 cycles per iteration

probably still buggy, will test later :D
2023-01-06 17:18:13 -08:00
3d94a9b5d4 show range 2023-01-05 11:58:32 -08:00
c7e7129eb2 whoops missed a few cycs 2023-01-05 11:55:41 -08:00
2340f8210e update round & sketch out the iter cycle count 2023-01-05 11:36:42 -08:00
7f70f14fc2 one last round sketch
combining copy and round
2023-01-05 11:17:13 -08:00
7ac0df0343 Added two version of 16-bit rounding
round16_incdec uses inc and dec
round16_addsub uses adc and sbc

the incdec version is the same when no rounding is needed
but saves about 8 cycles on the rounding cases, for an
average savings of 4.5 cycles for randomly distributed inputs

untested so far
2023-01-05 09:06:07 -08:00
6edd2f71d9 whoops added wrong 2023-01-04 21:26:47 -08:00
373e1441d3 comment tweaks 2023-01-04 21:09:45 -08:00
3a0545b673 tyop 2023-01-04 21:04:53 -08:00
1408855eed Note how many cycles loop unrolling saves
+4 cycles one-time setup

ldx #8 ; 2 cyc for first 8
ldx #8 ; 2 cyc for second 8 (different shift behavior)

-5 cycles/iter to get bit now

lsr arg + 1 ; 5 cyc
rol arg     ; 5 cyc

+10 cycles/iter to get the bit in a loop

dex ; 2 cyc
bne ; 2 cyc

4 cycles/iter for the loop

4 + (14 * 16) = 4 + 224 = 228
2023-01-04 21:02:18 -08:00