Commit graph

83 commits

Author SHA1 Message Date
05133aabdd slightly faster handling of signed mul
previously we were flipping the inputs if negative, and then the
output if both inputs were negative

turns out you can just treat the whole thing as an unsigned mul
and then subtract each term from the high word if the other term
is negative.

https://stackoverflow.com/a/28827013

this saves a handful of cycles, reducing our runtime to a merge
14.211 ms/px \o/
2024-12-15 20:17:45 -08:00
7f2bc43cff squares 2024-12-14 18:56:26 -08:00
5637783529 Faster imul16 routine
Improves runtime from 16.24 ms/px to 14.44 ms/px

This uses a routine found on Everything2:
https://everything2.com/title/Fast+6502+multiplication

which uses a lookup table of squares to do 8-bit imuls,
which are then composed into a 16-bit imul
2024-12-14 18:53:31 -08:00
29630c8887 update palette more smoothly 2024-08-19 13:21:44 -07:00
c559b6e76b palette adjustment 2024-08-18 21:07:53 -07:00
6f05a9bbd0 basic palette cycling 2024-08-18 21:06:30 -07:00
8be03993ab fix time of drawing of 'DONE' text 2024-08-18 20:29:39 -07:00
ee5b12dae8 mailmap 2024-08-18 20:15:47 -07:00
201d9bf15c clear screen after zoom/scroll 2024-02-25 15:15:23 -08:00
c152c4346b Progressive pixel layout 2024-02-04 14:25:15 -08:00
510457f97a add a note to fix stats when changing zoom 2023-03-11 21:15:08 -08:00
3d792603db keyboard nav sorta working 2023-03-11 20:45:32 -08:00
b1c26c1edd WIP fix keyboard check 2023-03-05 16:57:41 -08:00
53336f7af1 WIP quick hack to check keyboard
this for some reason only works ONCE
though I can replicate the logic in BASIC
and it works over multiple keys
not sure what's wrong
2023-03-05 15:45:44 -08:00
24abc21b01 move speed to the right 2023-03-05 13:56:50 -08:00
9926ec28e7 clean up speed display now uses ms/px msg 2023-03-05 13:48:39 -08:00
0501a364c7 Check for repeated zx/zy values
These will never escape, so saves
some time in the lake

trick is taken from fractint
2023-02-12 11:56:20 -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