Commit graph

20 commits

Author SHA1 Message Date
Jens Arnold
1a40e10933 H1x0: Changed lcd_blit() and the grayscale library to use the same internal format as on archos (1bpp). While the slowdown of the ISR is minimal (the intermediate buffers are in IRAM), the planar grayscale buffer takes only half the space for a given depth, and gray_update[_rect]() and unbuffered drawing/scrolling are faster because less data needs to be moved. It should also make porting of video.rock somewhat easier. * Archos recorders, Ondios: Some slight optimisations of the grayscale library.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7571 a1c6a512-1295-4272-9138-f99709370657
2005-09-30 20:10:27 +00:00
Jens Arnold
0c29589d8a Assembler optimised 64 bit multiplication for coldfire: ~15% speedup. Proper max_iter decrease amount.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7278 a1c6a512-1295-4272-9138-f99709370657
2005-08-01 20:49:41 +00:00
Jens Arnold
ec62b1ac56 Another small opt for the SH1 64 bit multiplication.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7276 a1c6a512-1295-4272-9138-f99709370657
2005-08-01 01:41:35 +00:00
Jens Arnold
6b749c5ab1 Further optimised asm 64 bit multiplication for SH1, speedup around 20%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7274 a1c6a512-1295-4272-9138-f99709370657
2005-08-01 01:23:04 +00:00
Jens Arnold
43b9cda13c Ooops, the adapted maximum iteration count was off by 60...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7259 a1c6a512-1295-4272-9138-f99709370657
2005-07-30 13:02:33 +00:00
Jens Arnold
3d73790ab7 Heavily improved mandelbrot plugin: (1) Calculation now uses 64bit fixed point arithmetics to allow zooming in way further before the precision barrier will hit. Added asm-optimised 64bit multiplication routine for SH1; more than twice as fast as what gcc produces. (2) Precision is dynamically selected based on the zoom level, low zoom factors still use 32bit for speed. (3) Maximum number of iterations is adapted to the zoom level. You can still increase / decrease it while staying at a zoom level. (4) Panning only recalculates the scrolled-in part of the screen -> way faster panning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7258 a1c6a512-1295-4272-9138-f99709370657
2005-07-30 12:42:11 +00:00
Jens Arnold
773c28e489 Mandelbrot plugin fixes: (1) Aspect handling was broken, it has to keep the x/y aspect which has almost nothing to do with the LCD aspect. (2) Comment about the # of shades. (3) Fixed and tweaked initial x and y limits. (4) Long policy, minor optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7252 a1c6a512-1295-4272-9138-f99709370657
2005-07-28 18:18:15 +00:00
Jens Arnold
a14f545ded Adjusted mandelbrot plugin to H1x0: (1) Working button assignment. (2) Different LCD aspect. Note that there is something wrong with the aspect when zooming; this was in fact there before, also on archos. (3) Grayscale library init for variable LCD resolution.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7245 a1c6a512-1295-4272-9138-f99709370657
2005-07-27 20:03:52 +00:00
Jens Arnold
c20a00ef3e Complete rework of the grayscale library: (1) Implemented the new rockbox graphics api. (2) Added buffered mode, and implemented most drawing functions for buffered mode only. Buffered mode will ease implementation of animated graphics. Some functions are additionally provided as unbuffered versions (drawing grayscale bitmaps, scrolling) since unbuffered mode is better suited for non-animated graphics (JPEG viewer, mandelbrot) and saves some RAM, which is important on Archos. (3) Put all functions in a couple of source files, no more one-function-per-files. This became possible since sectioned compilation for the plugin library and appropriate linking for the pluginswas introduced, otherwise the binaries would be bloated by unused functions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7241 a1c6a512-1295-4272-9138-f99709370657
2005-07-25 20:50:34 +00:00
Daniel Stenberg
6700ad8f20 adapted to build on iRiver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5784 a1c6a512-1295-4272-9138-f99709370657
2005-02-04 12:41:09 +00:00
Jens Arnold
e35a658ded Plugin rework 2: (all) Compile-time keyboard configuration, for Ondio adaption. (all) Now using the default event handler, standard placement is now in switch() default case. (minesweeper,pong,snake,snake2) added USB handling. (mandelbrot,mosaique) Fixed return value. (minesweeper) fast moving with button repeat. (oscillograph) Fixed cleanup in USB case.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5304 a1c6a512-1295-4272-9138-f99709370657
2004-10-18 21:45:00 +00:00
Jens Arnold
c5800382c3 Fixed a warning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4761 a1c6a512-1295-4272-9138-f99709370657
2004-06-16 21:13:40 +00:00
Jens Arnold
58f17cd082 Mandelbrot didn't yield() at all, leading to playback problems when heavily calculating mandelbrots
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4759 a1c6a512-1295-4272-9138-f99709370657
2004-06-16 20:51:05 +00:00
Jens Arnold
7115cf1d50 Improved drawing speed by drawing whole columns at once (Matthias)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4707 a1c6a512-1295-4272-9138-f99709370657
2004-05-26 23:49:42 +00:00
Jens Arnold
6920aed858 Removed the grayscale framework, gets linked in from the plugin lib instead
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4652 a1c6a512-1295-4272-9138-f99709370657
2004-05-19 17:19:11 +00:00
Jens Arnold
9ecfacc475 Updated with the latest grayscale framework
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4604 a1c6a512-1295-4272-9138-f99709370657
2004-05-10 22:00:51 +00:00
Jörg Hohensohn
e724b605f4 uses the new timer registration of the plugin API, no hardware banging any more
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4565 a1c6a512-1295-4272-9138-f99709370657
2004-04-30 21:13:49 +00:00
Linus Nielsen Feltzing
75b575a750 Now uses grayscalescvs diff -u apps/plugins/mandelbrot.c! Plus some internal changes, like removing TAB chars, and preventing unnecessary redraws etc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4535 a1c6a512-1295-4272-9138-f99709370657
2004-04-21 07:32:42 +00:00
Jens Arnold
bf8c3056f9 Overflow error fix
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4531 a1c6a512-1295-4272-9138-f99709370657
2004-04-20 23:11:12 +00:00
Jörg Hohensohn
4d3aa154c6 a Mandelbrot set plugin from Matthias
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4504 a1c6a512-1295-4272-9138-f99709370657
2004-04-14 23:48:26 +00:00