summaryrefslogtreecommitdiff
path: root/apps/plugins/mandelbrot.c (follow)
Commit message (Collapse)AuthorAge
* Start of work on a port to the Archos 'AV300' (AV320/340/380) - a working UI ↵Dave Chapman2007-01-14
| | | | | | simulator (but with a dummy background image for now) and the beginnings of the target-specific firmare code. Port is temporarily using a 2bpp LCD buffer format - the AV300 has a 320x240 colour (YCbCr-based) LCD which will need a new framebuffer format and drawing routines, but the LCD is also capable of various paletted bitmap modes, one of which has an identical framebuffer format to the greyscale ipods. Buttons (and hence the button mappings) are identical to the Archos Recorder, with the exception that the PLAY button on the Recorder is replaced by pressing the joystick on the AV300 (which I call BUTTON_SELECT). The initial port will begin by being strictly HWCODEC, but will evolve to be a hybrid SWCODEC/HWCODEC platform - it has a MAS3587F but also a main CPU (54MHz arm7tdmi plus DSP) capable of software decoding of at least some formats. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12008 a1c6a512-1295-4272-9138-f99709370657
* Hopefully clean up some errorsKarl Kurbjun2006-11-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11528 a1c6a512-1295-4272-9138-f99709370657
* Don't need to remove the backdrop for all plugins - leave it up for some.Karl Kurbjun2006-11-15
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11526 a1c6a512-1295-4272-9138-f99709370657
* Allow the Sansa e200 UI simulator to be built. Thanks to Andre Smith for the ↵Barry Wardell2006-10-26
| | | | | | nice image of the Sansa. Lots more to be done including testing and tweaking the keymaps and modifying the plugins for the Sansa's 176x220 LCD. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11351 a1c6a512-1295-4272-9138-f99709370657
* Mandelbrot: * Asm optimisation for arm targets. * Proper aspect for all LCD ↵Jens Arnold2006-08-09
| | | | | | resolutions. * Keep proper aspect when zooming on targets where LCD_WIDTH and/or LCD_HEIGHT is not an integer multiple of 8. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10498 a1c6a512-1295-4272-9138-f99709370657
* Grayscale library ported to the grayscale iPods, first version. Added C ↵Jens Arnold2006-08-07
| | | | | | reference versions of gray_update_rect() for both horizontal and vertical pixel packing. gray_update_rect() and gray_ub_gray_bitmap_part() not yet assembler optimised. Grayscale screendump doesn't work yet. * Fixed button assignments for iPod in grayscale.c git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10468 a1c6a512-1295-4272-9138-f99709370657
* Barry Wardell's keymappings for H10Daniel Stenberg2006-08-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10446 a1c6a512-1295-4272-9138-f99709370657
* Grayscale library: LCD linearisation and gamma correction.Jens Arnold2006-08-02
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10402 a1c6a512-1295-4272-9138-f99709370657
* To avoid having to use the main unit when accidentally launching a plugin ↵Kevin Ferrare2006-06-30
| | | | | | from the remote, plugins now support remote quit git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10157 a1c6a512-1295-4272-9138-f99709370657
* use #ifdef x instead of #if defined(x)Christian Gmeiner2006-04-09
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9581 a1c6a512-1295-4272-9138-f99709370657
* HAVE_ADJUSTABLE_CPU_FREQ isn't defined for simulators, so we don't have to ↵Christian Gmeiner2006-04-09
| | | | | | check for simulator builds before using cpu_boost() git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9580 a1c6a512-1295-4272-9138-f99709370657
* Code Police raid. Mostly changed // comments and indented to Rockbox style.Daniel Stenberg2006-03-03
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8894 a1c6a512-1295-4272-9138-f99709370657
* Finally - grayscale library support for the simulators. Currently SDL only, ↵Jens Arnold2006-02-26
| | | | | | win32 and x11 won't link anymore due to missing simulator functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8845 a1c6a512-1295-4272-9138-f99709370657
* More iPod 3G work from Seven Le MesleDave Chapman2006-02-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8835 a1c6a512-1295-4272-9138-f99709370657
* first gigabeat commitMarcoen Hirschberg2006-02-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8831 a1c6a512-1295-4272-9138-f99709370657
* Button driver for iAudio X5Linus Nielsen Feltzing2006-02-24
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8828 a1c6a512-1295-4272-9138-f99709370657
* Colour targets: Adapted mandelbrot plugin. The plugin library now contains ↵Jens Arnold2006-02-05
| | | | | | scrolling routines for >= 8 bpp displays. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8578 a1c6a512-1295-4272-9138-f99709370657
* New plugin loader. Solves the crashes introduced with the .bss changes while ↵Jens Arnold2006-01-15
| | | | | | keeping the small binary size. The model & api version check is now part of the plugin loader. Codecs are not yet adapted, but the old method still works for them. Simulator plugins are not (yet) version-checked. API version numbering restarted, as this is an all-new system. Uses the target ID from configure, so don't change that too often. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8349 a1c6a512-1295-4272-9138-f99709370657
* Mandelbrot plugin: New fixed point routines, loosing a tiny bit of precision ↵Jens Arnold2005-10-16
| | | | | | (3 bits), but way faster than before. Full precision routine uses the EMAC on coldfire. No more 64 bit arithmetics used except within the asm inlines. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7636 a1c6a512-1295-4272-9138-f99709370657
* Removed an unnecessary instruction from the coldfire 64 bit multiplication.Jens Arnold2005-10-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7607 a1c6a512-1295-4272-9138-f99709370657
* Coldfire: New timer handling on CPU frequency change, adjusting the ↵Jens Arnold2005-10-03
| | | | | | prescaler on the fly, for both tick and user timer. Precondition is that the higher frequencies are integer multiples of the base: now NORMAL is 45 MHz and MAX is 124 MHz. Removes the need for applications with longer timer periods (>= 10 ms) to boost the CPU all the time, e.g. the grayscale lib. Timer counts are now always based on the base frequency (CPU_FREQ). * Adjusted the RAM refresh timers to the new frequencies (all frequencies for H100) * All: Fixed the tick timer count being off by one. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7576 a1c6a512-1295-4272-9138-f99709370657
* H1x0: Changed lcd_blit() and the grayscale library to use the same internal ↵Jens Arnold2005-09-30
| | | | | | 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
* Assembler optimised 64 bit multiplication for coldfire: ~15% speedup. Proper ↵Jens Arnold2005-08-01
| | | | | | max_iter decrease amount. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7278 a1c6a512-1295-4272-9138-f99709370657
* Another small opt for the SH1 64 bit multiplication.Jens Arnold2005-08-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7276 a1c6a512-1295-4272-9138-f99709370657
* Further optimised asm 64 bit multiplication for SH1, speedup around 20%.Jens Arnold2005-08-01
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7274 a1c6a512-1295-4272-9138-f99709370657
* Ooops, the adapted maximum iteration count was off by 60...Jens Arnold2005-07-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7259 a1c6a512-1295-4272-9138-f99709370657
* Heavily improved mandelbrot plugin: (1) Calculation now uses 64bit fixed ↵Jens Arnold2005-07-30
| | | | | | 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
* Mandelbrot plugin fixes: (1) Aspect handling was broken, it has to keep the ↵Jens Arnold2005-07-28
| | | | | | 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
* Adjusted mandelbrot plugin to H1x0: (1) Working button assignment. (2) ↵Jens Arnold2005-07-27
| | | | | | 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
* Complete rework of the grayscale library: (1) Implemented the new rockbox ↵Jens Arnold2005-07-25
| | | | | | 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
* adapted to build on iRiverDaniel Stenberg2005-02-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5784 a1c6a512-1295-4272-9138-f99709370657
* Plugin rework 2: (all) Compile-time keyboard configuration, for Ondio ↵Jens Arnold2004-10-18
| | | | | | 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
* Fixed a warningJens Arnold2004-06-16
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4761 a1c6a512-1295-4272-9138-f99709370657
* Mandelbrot didn't yield() at all, leading to playback problems when heavily ↵Jens Arnold2004-06-16
| | | | | | calculating mandelbrots git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4759 a1c6a512-1295-4272-9138-f99709370657
* Improved drawing speed by drawing whole columns at once (Matthias)Jens Arnold2004-05-26
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4707 a1c6a512-1295-4272-9138-f99709370657
* Removed the grayscale framework, gets linked in from the plugin lib insteadJens Arnold2004-05-19
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4652 a1c6a512-1295-4272-9138-f99709370657
* Updated with the latest grayscale frameworkJens Arnold2004-05-10
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4604 a1c6a512-1295-4272-9138-f99709370657
* uses the new timer registration of the plugin API, no hardware banging any moreJörg Hohensohn2004-04-30
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4565 a1c6a512-1295-4272-9138-f99709370657
* Now uses grayscalescvs diff -u apps/plugins/mandelbrot.c! Plus some internal ↵Linus Nielsen Feltzing2004-04-21
| | | | | | 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
* Overflow error fixJens Arnold2004-04-20
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4531 a1c6a512-1295-4272-9138-f99709370657
* a Mandelbrot set plugin from MatthiasJörg Hohensohn2004-04-14
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4504 a1c6a512-1295-4272-9138-f99709370657