blob: 768342bd8002b89752b6b60ecb33eb943d259a44 [file] [log] [blame]
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001# Auto generated documentation by Rockbox plugin API generator v2
2# Made by Maurus Cuelenaere
3# __________ __ ___.
4# Open \______ \ ____ ____ | | _\_ |__ _______ ___
5# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
6# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
7# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
8# \/ \/ \/ \/ \/
9# $Id$
10#
11# Generated from http://svn.rockbox.org/viewvc.cgi/trunk/apps/plugin.h
12#
13# Format:
14# \group memory and strings
15# \conditions defined(HAVE_BACKLIGHT)
16# \param fmt
17# \return
18# \description
19# \see func1 func2 [S[apps/plugin.c]]
20#
21# Markup:
22# [W[wiki url]]
23# [S[svn url]]
24# [F[function]]
25# [[url]]
26# %BR%
27# =code=
Björn Stenberg6d0da412004-08-17 06:54:08 +000028
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000029char *strcasestr (const char* phaystack, const char* pneedle)
30 \group strings and memory
31 \param phaystack
32 \param pneedle
33 \return
34 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +000035
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000036bool action_userabort(int timeout)
37 \group action handling
38 \param timeout
39 \return
40 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +000041
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000042const char *rbversion
43 \return version of the plugin API
44 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +000045
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000046void ata_sleep(void)
47 \group file
48 \description Give the disk some rest
Björn Stenberg6d0da412004-08-17 06:54:08 +000049
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000050void ata_spin(void)
51 \group file
52 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +000053
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000054void ata_spindown(int seconds)
55 \group file
56 \param seconds
57 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +000058
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000059int atoi(const char *str)
60 \group strings and memory
61 \param str
62 \return
63 \description he atoi() function converts the initial portion of a string pointed to by str to int
Björn Stenberg6d0da412004-08-17 06:54:08 +000064
Rafaël Carréccdaf0a2010-07-25 13:54:13 +000065struct mp3entry* audio_current_track(void)
66 \group playback control
67 \return the mp3entry struct of the currently playing track
68 \description
69 \see [S[firmware/export/id3.h]]
70
71void audio_ff_rewind(long newtime)
72 \group playback control
73 \param newtime
74 \description
75
76void audio_flush_and_reload_tracks(void)
77 \group playback control
78 \description
79
80int audio_get_file_pos(void)
81 \group playback control
82 \return
83 \description
84
85bool audio_has_changed_track(void)
86 \group playback control
87 \return
88 \description
89
90void audio_next(void)
91 \group playback control
92 \description
93
94struct mp3entry* audio_next_track(void)
95 \group playback control
96 \return the mp3entry struct of the upcoming track
97 \description
98 \see [S[firmware/export/id3.h]]
99
100void audio_pause(void)
101 \group playback control
102 \description
103
104void audio_prev(void)
105 \group playback control
106 \description
107
108void audio_resume(void)
109 \group playback control
110 \description
111
112void audio_set_input_source(int source, unsigned flags)
113 \group sound
114 \conditions (CONFIG_CODEC == SWCODEC) && (INPUT_SRC_CAPS != 0)
115 \param source
116 \param flags
117 \description
118
119void audio_set_output_source(int monitor)
120 \group sound
121 \conditions (CONFIG_CODEC == SWCODEC) && (INPUT_SRC_CAPS != 0)
122 \param monitor
123 \description
124
125void audio_set_recording_gain(int left, int right, int type)
126 \group sound
127 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
128 \param left
129 \param right
130 \param type
131 \description
132
133int audio_status(void)
134 \group playback control
135 \return
136 \description
137
138void audio_stop(void)
139 \group playback control
140 \description
141
142void backlight_off(void)
143 \group backlight
144 \description Turns the backlight off
145
146void backlight_on(void)
147 \group backlight
148 \description Turns the backlight on
149
150void backlight_set_brightness(int val)
151 \group backlight
152 \conditions (defined(HAVE_BACKLIGHT_BRIGHTNESS))
153 \param val
154 \description
155
156void backlight_set_timeout(int index)
157 \group backlight
158 \param index 0 : backlight always off%BR%1 : no time out%BR%2 : 1s%BR%3 : 2s%BR%4 : 3s%BR%5 : 4s%BR%6 : 5s%BR%7 : 6s%BR%8 : 7s%BR%9 : 8s%BR%10 : 9s%BR%11 : 10s%BR%12 : 15s%BR%13 : 20s%BR%14 : 25s%BR%15 : 30s%BR%16 : 45s%BR%17 : 60s%BR%18 : 90s%BR%other : backlight always off
159 \description Set the backlight timeout
160
161void backlight_set_timeout_plugged(int index)
162 \conditions (CONFIG_CHARGING)
163 \param index
164 \description
165
166int battery_level(void)
167 \group power
168 \return battery level in percent
169 \description On the simulator, battery_level is always 75
170
171bool battery_level_safe(void)
172 \group power
173 \return
174 \description
175
176int battery_time(void)
177 \group power
178 \return
179 \description
180
181unsigned int battery_voltage(void)
182 \group power
183 \conditions (!defined(SIMULATOR))
184 \return
185 \description
186
187unsigned short *bidi_l2v( const unsigned char *str, int orientation )
188 \conditions !defined(HAVE_LCD_CHARCELLS)
189 \param str
190 \param orientation
191 \return
192 \description
193
194void bitswap(unsigned char *data, int length)
195 \group sound
196 \conditions (!defined(SIMULATOR)) && (CONFIG_CODEC != SWCODEC)
197 \param data
198 \param length
199 \description Swap the bits for each element of array =data= of size =length=
200
201int bufadvance(int handle_id, off_t offset)
202 \group buffering API
203 \conditions ((CONFIG_CODEC == SWCODEC))
204 \param handle_id
205 \param offset
206 \return
207 \description
208
209int bufalloc(const void *src, size_t size, enum data_type type)
210 \group buffering API
211 \conditions ((CONFIG_CODEC == SWCODEC))
212 \param src
213 \param size
214 \param type
215 \return
216 \description
217
218bool bufclose(int handle_id)
219 \group buffering API
220 \conditions ((CONFIG_CODEC == SWCODEC))
221 \param handle_id
222 \return
223 \description
224
225ssize_t bufcuttail(int handle_id, size_t size)
226 \group buffering API
227 \conditions ((CONFIG_CODEC == SWCODEC))
228 \param handle_id
229 \param size
230 \return
231 \description
232
233ssize_t bufgetdata(int handle_id, size_t size, void **data)
234 \group buffering API
235 \conditions ((CONFIG_CODEC == SWCODEC))
236 \param handle_id
237 \param size
238 \param data
239 \return
240 \description
241
242ssize_t bufgettail(int handle_id, size_t size, void **data)
243 \group buffering API
244 \conditions ((CONFIG_CODEC == SWCODEC))
245 \param handle_id
246 \param size
247 \param data
248 \return
249 \description
250
251int bufopen(const char *file, size_t offset, enum data_type type)
252 \group buffering API
253 \conditions ((CONFIG_CODEC == SWCODEC))
254 \param file
255 \param offset
256 \param type
257 \return
258 \description
259
260ssize_t bufread(int handle_id, size_t size, void *dest)
261 \group buffering API
262 \conditions ((CONFIG_CODEC == SWCODEC))
263 \param handle_id
264 \param size
265 \param dest
266 \return
267 \description
268
269int bufseek(int handle_id, size_t newpos)
270 \group buffering API
271 \conditions ((CONFIG_CODEC == SWCODEC))
272 \param handle_id
273 \param newpos
274 \return
275 \description
276
277ssize_t buf_get_offset(int handle_id, void *ptr)
278 \conditions ((CONFIG_CODEC == SWCODEC))
279 \param handle_id
280 \param ptr
281 \return
282 \description
283
284ssize_t buf_handle_offset(int handle_id)
285 \conditions ((CONFIG_CODEC == SWCODEC))
286 \param handle_id
287 \return
288 \description
289
290void buf_request_buffer_handle(int handle_id)
291 \conditions ((CONFIG_CODEC == SWCODEC))
292 \param handle_id
293 \description
294
295void buf_set_base_handle(int handle_id)
296 \conditions ((CONFIG_CODEC == SWCODEC))
297 \param handle_id
298 \description
299
300size_t buf_used(void)
301 \conditions ((CONFIG_CODEC == SWCODEC))
302 \return
303 \description
304
305void buttonlight_off(void)
306 \group button
307 \conditions (defined(HAVE_BUTTON_LIGHT))
308 \description
309
310void buttonlight_on(void)
311 \group button
312 \conditions (defined(HAVE_BUTTON_LIGHT))
313 \description
314
315void buttonlight_set_brightness(int val)
316 \group button
317 \conditions (defined(HAVE_BUTTON_LIGHT)) && (defined(HAVE_BUTTONLIGHT_BRIGHTNESS))
318 \param val
319 \description
320
321void buttonlight_set_timeout(int value)
322 \group button
323 \conditions (defined(HAVE_BUTTON_LIGHT))
324 \param value
325 \description
326
327void button_clear_queue(void)
328 \group button
329 \description Empty the button queue
330
331long button_get(bool block)
332 \group button
333 \param block If is set TRUE, button_get won't return until a key is pressed
334 \return a bitmask for which keys were pressed
335 \description
336
337intptr_t button_get_data(void)
338 \group button
339 \conditions (defined(HAVE_BUTTON_DATA))
340 \return
341 \description
342
343long button_get_w_tmo(int ticks)
344 \group button
345 \param ticks
346 \return a bitmask for which keys were pressed; if no key was pressed, return BUTTON_NONE
347 \description Wait for a key press for =ticks= ticks. (there are HZ ticks per second)
348
349bool button_hold(void)
350 \group button
351 \conditions (defined(HAS_BUTTON_HOLD))
352 \return
353 \description
354
355struct event_queue *button_queue
356 \conditions !defined(HAVE_LCD_CHARCELLS) )) && (defined(HAVE_LCD_ENABLE
357 \return
358 \description
359
360int button_queue_count(void)
361 \group button
362 \return
363 \description
364
365int button_status(void)
366 \group button
367 \return a bitmask for which keys are currently pressed
368 \description
369
370void cancel_cpu_boost(void)
371 \conditions (defined(HAVE_SCHEDULER_BOOSTCTRL))
372 \description Unboosts the CPU for the current thread
373
374const unsigned char *font_get_bits( struct font *pf, unsigned short char_code )
375 \conditions !defined(HAVE_LCD_CHARCELLS)
376 \param pf
377 \param char_code
378 \return
379 \description
380
381const unsigned char* utf8decode(const unsigned char *utf8, unsigned short *ucs)
382 \group unicode stuff
383 \param utf8
384 \param ucs
385 \return
386 \description
387
388const unsigned char *_ctype_
389 \group strings and memory
390 \return
391 \description
392
393bool charger_inserted(void)
394 \group power
395 \conditions (CONFIG_CHARGING)
396 \return
397 \description
398
399bool charging_state(void)
400 \group power
401 \conditions (CONFIG_CHARGING) && (CONFIG_CHARGING == CHARGING_MONITOR)
402 \return
403 \description
404
405int closedir(DIR* dir)
406 \group dir
407 \param dir
408 \return
409 \description The closedir() function closes the directory stream associated with =dir=. The directory stream descriptor dir is not available after this call.
410
411int codec_load_file(const char* codec, struct codec_api *api)
412 \group misc
413 \conditions (CONFIG_CODEC == SWCODEC)
414 \param codec
415 \param api
416 \return
417 \description
418
419int count_mp3_frames(int fd, int startpos, int filesize, void (*progressfunc)(int))
420 \group misc
421 \param fd
422 \param startpos
423 \param filesize
424 \param progressfunc
425 \return
426 \description
427
428void cpu_boost(bool on_off)
429 \conditions (!defined(SIMULATOR)) && (defined(HAVE_ADJUSTABLE_CPU_FREQ)) && !defined(CPU_BOOST_LOGGING)
430 \param on_off
431 \description Boosts the CPU if =on_off= is true, otherwise it unboosts the CPU
432
433void cpu_boost_(bool on_off,char*location,int line)
434 \conditions (!defined(SIMULATOR)) && (defined(HAVE_ADJUSTABLE_CPU_FREQ)) && (defined(CPU_BOOST_LOGGING))
435 \param on_off
436 \param charlocation
437 \param line
438 \description
439
440long *cpu_frequency
441 \conditions (!defined(SIMULATOR))
442 \return the current cpu frequency
443 \description
444
445char *create_numbered_filename(char *buffer, const char *path, const char *prefix, const char *suffix, int numberlen IF_CNFN_NUM_(, int *num))
446 \group file
447 \param buffer
448 \param path
449 \param prefix
450 \param suffix
451 \param num
452 \param numberlen
453 \return
454 \description
455
456struct thread_entry* create_thread(void (*function)(void), void* stack, size_t stack_size, unsigned flags, const char *name IF_PRIO(, int priority) IF_COP(, unsigned int core))
457 \group kernel/ system
458 \param function
459 \param stack
460 \param stack_size
461 \param flags
462 \param priority
463 \param core
464 \param name
465 \return its ID if context area could be allocated, else return -1
466 \description Creates a thread
467 \see [W[RockboxKernel#struct_thread_entry_create_threa]]
468
469int create_xing_header(int fd, long startpos, long filesize, unsigned char *buf, unsigned long num_frames, unsigned long rec_time, unsigned long header_template, void (*progressfunc)(int), bool generate_toc)
470 \group misc
471 \param fd
472 \param startpos
473 \param filesize
474 \param buf
475 \param num_frames
476 \param rec_time
477 \param header_template
478 \param progressfunc
479 \param generate_toc
480 \return
481 \description
482
483volatile long* current_tick
484 \group kernel/ system
485 \return
486 \description
487
488void debugf(const char *fmt, ...) ATTRIBUTE_PRINTF(1, 2)
489 \group misc
490 \conditions (defined(DEBUG) || defined(SIMULATOR))
491 \param fmt
492 \description Prints =fmt= in a printf-like fashion to STDERR
493
494long default_event_handler(long event)
495 \group kernel/ system
496 \param event
497 \return SYS_USB_CONNECTED and call usb_screen() if =event= equals to SYS_USB_CONNECTED, else do nothing and return 0
498 \description
499
500long default_event_handler_ex(long event, void (*callback)(void *), void *parameter)
501 \group kernel/ system
502 \param event
503 \param callback
504 \param parameter
505 \return
506 \description
507
508bool detect_flashed_ramimage(void)
509 \group Routines for the iriver_flash -plugin.
510 \conditions (defined(IRIVER_H100_SERIES))
511 \return
512 \description
513
514bool detect_flashed_romimage(void)
515 \group Routines for the iriver_flash -plugin.
516 \conditions (defined(IRIVER_H100_SERIES))
517 \return
518 \description
519
520bool detect_original_firmware(void)
521 \group Routines for the iriver_flash -plugin.
522 \conditions (defined(IRIVER_H100_SERIES))
523 \return
524 \description
525
526bool dir_exists(const char *path)
527 \group dir
528 \param path
529 \return
530 \description
531
532int do_menu(const struct menu_item_ex *menu, int *start_selected, struct viewport parent[NB_SCREENS], bool hide_bars)
533 \group menu
534 \param menu
535 \param start_selected
536 \param parent[NB_SCREENS]
537 \param hide_bars
538 \return
539 \description
540
541intptr_t dsp_configure(struct dsp_config *dsp, int setting, intptr_t value)
542 \group sound
543 \conditions (CONFIG_CODEC == SWCODEC)
544 \param dsp
545 \param setting
546 \param value
547 \return
548 \description
549
550void dsp_dither_enable(bool enable)
551 \group sound
552 \conditions (CONFIG_CODEC == SWCODEC)
553 \param enable
554 \description
555
556int dsp_process(struct dsp_config *dsp, char *dest, const char *src[], int count)
557 \group sound
558 \conditions (CONFIG_CODEC == SWCODEC)
559 \param dsp
560 \param dest
561 \param src[]
562 \param count
563 \return
564 \description
565
566void dsp_set_crossfeed(bool enable)
567 \group sound
568 \conditions (CONFIG_CODEC == SWCODEC)
569 \param enable
570 \description
571
572void dsp_set_eq(bool enable)
573 \group sound
574 \conditions (CONFIG_CODEC == SWCODEC)
575 \param enable
576 \description
577
578void event_init(struct event *e, unsigned int flags)
579 \conditions (defined(HAVE_EVENT_OBJECTS))
580 \param e
581 \param flags
582 \description
583
584void event_set_state(struct event *e, unsigned int state)
585 \conditions (defined(HAVE_EVENT_OBJECTS))
586 \param e
587 \param state
588 \description
589
590void event_wait(struct event *e, unsigned int for_state)
591 \conditions (defined(HAVE_EVENT_OBJECTS))
592 \param e
593 \param for_state
594 \description
595
596int fdprintf(int fd, const char *fmt, ...) ATTRIBUTE_PRINTF(2, 3)
597 \group file
598 \param fd
599 \param fmt
600 \return number of characters writen to =fd= or a negative value upon error
601 \description Write a formated string in the =fd=
602
603bool file_exists(const char *file)
604 \group file
605 \param file
606 \return
607 \description
608
609bool find_albumart(const struct mp3entry *id3, char *buf, int buflen)
610 \conditions (defined(HAVE_ALBUMART))
611 \param id3
612 \param buf
613 \param buflen
614 \return
615 \description
616
617unsigned long find_next_frame(int fd, long *offset, long max_offset, unsigned long last_header)
618 \group misc
619 \param fd
620 \param offset
621 \param max_offset
622 \param last_header
623 \return
624 \description
625
626void flush_icache(void)
627 \conditions (defined(CACHE_FUNCTIONS_AS_CALL))
628 \description
629
630struct font* font_get(int font)
631 \conditions !defined(HAVE_LCD_CHARCELLS)
632 \param font
633 \return the font structure for =font=
634 \description If the requested font isn't loaded/compiled-in, decrement the font number and try again.
635 \see [S[firmware/export/font.h]]
636
637int font_getstringsize(const unsigned char *str, int *w, int *h, int fontnumber)
638 \conditions !defined(HAVE_LCD_CHARCELLS)
639 \param str
640 \param w
641 \param h
642 \param fontnumber
643 \return
644 \description
645
646int font_get_width(struct font* pf, unsigned short char_code)
647 \conditions !defined(HAVE_LCD_CHARCELLS)
648 \param pf
649 \param char_code
650 \return
651 \description
652
653struct font* font_load(const char *path)
654 \conditions !defined(HAVE_LCD_CHARCELLS)
655 \param path
656 \return
657 \description Load font =path= and returns a struct font pointer for it
658 \see [S[firmware/export/font.h]]
659
660int get_action(int context, int timeout)
661 \group action handling
662 \param context
663 \param timeout
664 \return
665 \description
666
667const char *get_codec_filename(int cod_spec)
668 \group misc
669 \conditions (CONFIG_CODEC == SWCODEC)
670 \param cod_spec
671 \return
672 \description
673
674int get_custom_action(int context,int timeout, const struct button_mapping* (*get_context_map)(int))
675 \group action handling
676 \param context
677 \param timeout
678 \param get_context_map
679 \return
680 \description
681
682bool get_metadata(struct mp3entry* id3, int fd, const char* trackname)
683 \group misc
684 \conditions (CONFIG_CODEC == SWCODEC)
685 \param id3
686 \param fd
687 \param trackname
688 \return
689 \description
690
691struct tm* get_time(void)
692 \group misc
693 \return current time
694 \description
695 \see [S[firmware/include/time.h]]
696
697struct user_settings* global_settings
698 \group misc
699 \return the global_settings struct
700 \description
701 \see [S[apps/settings.h]]
702
703struct system_status *global_status
704 \group misc
705 \return the global_status struct
706 \description
707 \see [S[apps/settings.h]]
708
709void gui_scrollbar_draw(struct screen * screen, int x, int y, int width, int height, int items, int min_shown, int max_shown, unsigned flags)
710 \conditions !defined(HAVE_LCD_CHARCELLS)
711 \param screen
712 \param x
713 \param y
714 \param width
715 \param height
716 \param items
717 \param min_shown
718 \param max_shown
719 \param flags
720 \description
721
722void gui_synclist_add_item(struct gui_synclist * lists)
723 \group list
724 \param lists
725 \description
726
727void gui_synclist_del_item(struct gui_synclist * lists)
728 \group list
729 \param lists
730 \description
731
732bool gui_synclist_do_button(struct gui_synclist * lists, unsigned *action, enum list_wrap wrap)
733 \group list
734 \param lists
735 \param action
736 \param wrap
737 \return
738 \description
739
740void gui_synclist_draw(struct gui_synclist * lists)
741 \group list
742 \param lists
743 \description
744
745int gui_synclist_get_nb_items(struct gui_synclist * lists)
746 \group list
747 \param lists
748 \return
749 \description
750
751int gui_synclist_get_sel_pos(struct gui_synclist * lists)
752 \group list
753 \param lists
754 \return
755 \description
756
757void gui_synclist_init(struct gui_synclist * lists, list_get_name callback_get_item_name, void * data, bool scroll_all,int selected_size, struct viewport parent[NB_SCREENS])
758 \group list
759 \param lists
760 \param callback_get_item_name
761 \param data
762 \param scroll_all
763 \param selected_size
764 \param parent[NB_SCREENS]
765 \description
766
767void gui_synclist_limit_scroll(struct gui_synclist * lists, bool scroll)
768 \group list
769 \param lists
770 \param scroll
771 \description
772
773void gui_synclist_select_item(struct gui_synclist * lists, int item_number)
774 \group list
775 \param lists
776 \param item_number
777 \description
778
779void gui_synclist_set_icon_callback(struct gui_synclist * lists, list_get_icon icon_callback)
780 \group list
781 \param lists
782 \param icon_callback
783 \description
784
785void gui_synclist_set_nb_items(struct gui_synclist * lists, int nb_items)
786 \group list
787 \param lists
788 \param nb_items
789 \description
790
791void gui_synclist_set_title(struct gui_synclist *lists, char* title, int icon)
792 \group list
793 \param lists
794 \param title
795 \param icon
796 \description
797
798void gui_syncstatusbar_draw(struct gui_syncstatusbar * bars, bool force_redraw)
799 \group scroll bar
800 \param bars
801 \param force_redraw refreshes =bars= if true
802 \description Draws an initialized statusbar =bars= on the screen and refreshs it if =force_redraw= is true.
803 \see [S[apps/gui/statusbar.h]]
804
805enum yesno_res gui_syncyesno_run(const struct text_message * main_message, const struct text_message * yes_message, const struct text_message * no_message)
806 \group list
807 \param main_message
808 \param yes_message
809 \param no_message
810 \return
811 \description
812
813void i2c_begin(void)
814 \group MAS communication
815 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
816 \description
817
818void i2c_end(void)
819 \group MAS communication
820 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
821 \description
822
823int i2c_write(int address, const unsigned char* buf, int count )
824 \group MAS communication
825 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
826 \param address
827 \param buf
828 \param count
829 \return
830 \description
831
832void invalidate_icache(void)
833 \conditions (defined(CACHE_FUNCTIONS_AS_CALL))
834 \description
835
836unsigned char* iso_decode(const unsigned char *iso, unsigned char *utf8, int cp, int count)
837 \group unicode stuff
838 \param iso
839 \param utf8
840 \param cp
841 \param count
842 \return
843 \description
844
845bool is_backlight_on(bool ignore_always_off)
846 \param ignore_always_off
847 \return
848 \description
849
850int kbd_input(char* buffer, int buflen)
851 \group misc
852 \param buffer
853 \param buflen
854 \return 0 upon success, negative upon failure
855 \description Prompt for a string to be stored in =buffer= which is of length =buflen=
856
857void lcd_bitmap(const fb_data *src, int x, int y, int width, int height)
858 \group lcd
859 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
860 \param src
861 \param x
862 \param y
863 \param width
864 \param height
865 \description Put a bitmap at given XY coordinates. Element src[i] is the binary representation of column number i of the bitmap read from bottom to top.
866
867void lcd_bitmap_part(const fb_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height)
868 \group lcd
869 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
870 \param src
871 \param src_x
872 \param src_y
873 \param stride
874 \param x
875 \param y
876 \param width
877 \param height
878 \description
879
880void lcd_bitmap_transparent(const fb_data *src, int x, int y, int width, int height)
881 \group lcd
882 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16)
883 \param src
884 \param x
885 \param y
886 \param width
887 \param height
888 \description
889
890void lcd_bitmap_transparent_part(const fb_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height)
891 \group lcd
892 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16)
893 \param src
894 \param src_x
895 \param src_y
896 \param stride
897 \param x
898 \param y
899 \param width
900 \param height
901 \description
902
903void lcd_blit_grey_phase(unsigned char *values, unsigned char *phases, int bx, int by, int bwidth, int bheight, int stride)
904 \group lcd
905 \conditions !defined(HAVE_LCD_CHARCELLS) )) && ((LCD_DEPTH < 4) && !defined(SIMULATOR
906 \param values
907 \param phases
908 \param bx
909 \param by
910 \param bwidth
911 \param bheight
912 \param stride
913 \description
914
915void lcd_blit_mono(const unsigned char *data, int x, int by, int width, int bheight, int stride)
916 \group lcd
917 \conditions !defined(HAVE_LCD_CHARCELLS) )) && ((LCD_DEPTH < 4) && !defined(SIMULATOR
918 \param data
919 \param x
920 \param by
921 \param width
922 \param bheight
923 \param stride
924 \description
925
926void lcd_blit_yuv(unsigned char * const src[3], int src_x, int src_y, int stride, int x, int y, int width, int height)
927 \group lcd
928 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH == 16)
929 \param src[3]
930 \param src_x
931 \param src_y
932 \param stride
933 \param x
934 \param y
935 \param width
936 \param height
937 \description
938
939void lcd_clear_display(void)
940 \group lcd
941 \description Clears the LCD and the framebuffer
942
943void lcd_define_pattern(unsigned long ucs, const char *pattern)
944 \group lcd
945 \conditions (defined(HAVE_LCD_CHARCELLS))
946 \param ucs
947 \param pattern is a 8x8 pixelbitmap
948 \description Define a custom pattern for index =ucs=
949
950void lcd_double_height(bool on)
951 \group lcd
952 \conditions (defined(HAVE_LCD_CHARCELLS))
953 \param on
954 \description
955
956void lcd_drawline(int x1, int y1, int x2, int y2)
957 \group lcd
958 \conditions !defined(HAVE_LCD_CHARCELLS)
959 \param x1 X top coordinate
960 \param y1 Y top coordinate
961 \param x2 X bottom coordinate
962 \param y2 Y bottom coordinate
963 \description Draws a line at (=x1=, =y1=) -> (=x2=, =y2=) within current drawing mode
964
965void lcd_drawpixel(int x, int y)
966 \group lcd
967 \conditions !defined(HAVE_LCD_CHARCELLS)
968 \param x
969 \param y
970 \description Draws a pixel at (=x=, =y=) within current drawing mode
971
972void lcd_drawrect(int x, int y, int width, int height)
973 \group lcd
974 \conditions !defined(HAVE_LCD_CHARCELLS)
975 \param x
976 \param y
977 \param width
978 \param height
979 \description Draws a rectangle at (=x=, =y=) -> (=x= + =width=, =y= + =height=) within current drawing mode
980
981void lcd_fillrect(int x, int y, int width, int height)
982 \group lcd
983 \conditions !defined(HAVE_LCD_CHARCELLS)
984 \param x
985 \param y
986 \param width
987 \param height
988 \description Draws a filled rectangle at (=x=, =y=) -> (=x= + =width=, =y= + =height=) within current drawing mode
989
990fb_data* lcd_framebuffer
991 \group lcd
992 \conditions !defined(HAVE_LCD_CHARCELLS)
993 \return
994 \description Pointer to the framebuffer
995 \see [S[firmware/export/lcd.h]]
996
997int lcd_getstringsize(const unsigned char *str, int *w, int *h)
998 \group lcd
999 \param str String
1000 \param w Width
1001 \param h Height
1002 \return Success or not
1003 \description Stores the width and height of the string in =w= and =h=
1004
1005fb_data* lcd_get_backdrop(void)
1006 \group lcd
1007 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1008 \return Pointer to framebuffer data
1009 \description Gets the current backdrop
1010 \see lcd_framebuffer
1011
1012unsigned lcd_get_background(void)
1013 \group lcd
1014 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1015 \return
1016 \description
1017
1018int lcd_get_drawmode(void)
1019 \group lcd
1020 \conditions !defined(HAVE_LCD_CHARCELLS)
1021 \return current LCD drawing mode
1022 \description
1023
1024unsigned lcd_get_foreground(void)
1025 \group lcd
1026 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1027 \return
1028 \description
1029
1030unsigned long lcd_get_locked_pattern(void)
1031 \group lcd
1032 \conditions (defined(HAVE_LCD_CHARCELLS))
1033 \return
1034 \description Get a locked pattern index
1035 \see [S[firmware/drivers/lcd-player.c]]
1036
1037void lcd_hline(int x1, int x2, int y)
1038 \group lcd
1039 \conditions !defined(HAVE_LCD_CHARCELLS)
1040 \param x1 X start coordinate
1041 \param x2 X end coordinate
1042 \param y Y coordinate
1043 \description Draws a horizontal line at (=x1=, =y=) -> (=x2=, =y=) within current drawing mode
1044
1045void lcd_icon(int icon, bool enable)
1046 \group lcd
1047 \conditions (defined(HAVE_LCD_CHARCELLS))
1048 \param icon
1049 \param enable
1050 \description
1051 \see [S[firmware/drivers/lcd-player.c]]
1052
1053void lcd_mono_bitmap(const unsigned char *src, int x, int y, int width, int height)
1054 \group lcd
1055 \conditions !defined(HAVE_LCD_CHARCELLS)
1056 \param src
1057 \param x
1058 \param y
1059 \param width
1060 \param height
1061 \description
1062
1063void lcd_mono_bitmap_part(const unsigned char *src, int src_x, int src_y, int stride, int x, int y, int width, int height)
1064 \group lcd
1065 \conditions !defined(HAVE_LCD_CHARCELLS)
1066 \param src
1067 \param src_x
1068 \param src_y
1069 \param stride
1070 \param x
1071 \param y
1072 \param width
1073 \param height
1074 \description
1075
1076void lcd_putc(int x, int y, unsigned long ucs)
1077 \group lcd
1078 \conditions (defined(HAVE_LCD_CHARCELLS))
1079 \param x
1080 \param y
1081 \param ucs
1082 \description Put character =ucs= at coordinates (=x=, =y=)
1083
1084void lcd_puts(int x, int y, const unsigned char *string)
1085 \group lcd
1086 \param x Row X
1087 \param y Column Y
1088 \param string
1089 \description Puts string on the LCD at row =x= and column =y=
1090
1091void lcd_putsxy(int x, int y, const unsigned char *string)
1092 \group lcd
1093 \param x X coordinate
1094 \param y Y coordinate
1095 \param string
1096 \description Puts string on the LCD at position (=x=, =y=)
1097
1098void lcd_puts_scroll(int x, int y, const unsigned char* string)
1099 \group lcd
1100 \param x Row X
1101 \param y Column Y
1102 \param string
1103 \description Puts scrolling string on the LCD at row =x= and column =y=. The scrolling style is STYLE_DEFAULT.
1104
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001105void lcd_put_cursor(int x, int y, unsigned long ucs)
1106 \group lcd
1107 \conditions (defined(HAVE_LCD_CHARCELLS))
1108 \param x
1109 \param y
1110 \param ucs
1111 \description Put cursor at coordinates (=x=, =y=)
1112 \see [S[firmware/export/lcd.h]]
1113
1114void lcd_remote_bitmap(const fb_remote_data *src, int x, int y, int width, int height)
1115 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1116 \param src
1117 \param x
1118 \param y
1119 \param width
1120 \param height
1121 \description
1122
1123void lcd_remote_bitmap_part(const fb_remote_data *src, int src_x, int src_y, int stride, int x, int y, int width, int height)
1124 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1125 \param src
1126 \param src_x
1127 \param src_y
1128 \param stride
1129 \param x
1130 \param y
1131 \param width
1132 \param height
1133 \description
1134
1135void lcd_remote_clear_display(void)
1136 \group remote lcd
1137 \conditions (defined(HAVE_REMOTE_LCD))
1138 \description
1139
1140void lcd_remote_drawline(int x1, int y1, int x2, int y2)
1141 \group remote lcd
1142 \conditions (defined(HAVE_REMOTE_LCD))
1143 \param x1 X top coordinate
1144 \param y1 Y top coordinate
1145 \param x2 X bottom coordinate
1146 \param y2 Y bottom coordinate
1147 \description Draws a line at (=x1=, =y1=) -> (=x2=, =y2=) within current drawing mode
1148
1149void lcd_remote_drawpixel(int x, int y)
1150 \group remote lcd
1151 \conditions (defined(HAVE_REMOTE_LCD))
1152 \param x
1153 \param y
1154 \description Draws a pixel at (=x=, =y=) within current drawing mode
1155
1156void lcd_remote_drawrect(int x, int y, int nx, int ny)
1157 \group remote lcd
1158 \conditions (defined(HAVE_REMOTE_LCD))
1159 \param x
1160 \param y
1161 \param nx
1162 \param ny
1163 \description
1164
1165void lcd_remote_fillrect(int x, int y, int nx, int ny)
1166 \group remote lcd
1167 \conditions (defined(HAVE_REMOTE_LCD))
1168 \param x
1169 \param y
1170 \param nx
1171 \param ny
1172 \description
1173
1174fb_remote_data* lcd_remote_framebuffer
1175 \group remote lcd
1176 \conditions (defined(HAVE_REMOTE_LCD))
1177 \return
1178 \description
1179
1180int lcd_remote_getstringsize(const unsigned char *str, int *w, int *h)
1181 \group remote lcd
1182 \conditions (defined(HAVE_REMOTE_LCD))
1183 \param str String
1184 \param w Width
1185 \param h Height
1186 \return Success or not
1187 \description Stores the width and height of the string in =w= and =h=
1188
1189unsigned lcd_remote_get_background(void)
1190 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1191 \return
1192 \description
1193
1194int lcd_remote_get_drawmode(void)
1195 \group remote lcd
1196 \conditions (defined(HAVE_REMOTE_LCD))
1197 \return
1198 \description
1199
1200unsigned lcd_remote_get_foreground(void)
1201 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1202 \return
1203 \description
1204
1205void lcd_remote_hline(int x1, int x2, int y)
1206 \group remote lcd
1207 \conditions (defined(HAVE_REMOTE_LCD))
1208 \param x1
1209 \param x2
1210 \param y
1211 \description
1212
1213void lcd_remote_mono_bitmap(const unsigned char *src, int x, int y, int width, int height)
1214 \group remote lcd
1215 \conditions (defined(HAVE_REMOTE_LCD))
1216 \param src
1217 \param x
1218 \param y
1219 \param width
1220 \param height
1221 \description
1222
1223void lcd_remote_mono_bitmap_part(const unsigned char *src, int src_x, int src_y, int stride, int x, int y, int width, int height)
1224 \group remote lcd
1225 \conditions (defined(HAVE_REMOTE_LCD))
1226 \param src
1227 \param src_x
1228 \param src_y
1229 \param stride
1230 \param x
1231 \param y
1232 \param width
1233 \param height
1234 \description
1235
1236void lcd_remote_puts(int x, int y, const unsigned char *string)
1237 \group remote lcd
1238 \conditions (defined(HAVE_REMOTE_LCD))
1239 \param x
1240 \param y
1241 \param string
1242 \description
1243
1244void lcd_remote_putsxy(int x, int y, const unsigned char *string)
1245 \group remote lcd
1246 \conditions (defined(HAVE_REMOTE_LCD))
1247 \param x
1248 \param y
1249 \param string
1250 \description
1251
1252void lcd_remote_puts_scroll(int x, int y, const unsigned char* string)
1253 \group remote lcd
1254 \conditions (defined(HAVE_REMOTE_LCD))
1255 \param x
1256 \param y
1257 \param string
1258 \description
1259
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001260void lcd_remote_puts_style(int x, int y, const unsigned char *str, int style)
1261 \group remote lcd
1262 \conditions (defined(HAVE_REMOTE_LCD))
1263 \param x
1264 \param y
1265 \param str
1266 \param style
1267 \description
1268
1269void lcd_remote_setfont(int font)
1270 \group remote lcd
1271 \conditions (defined(HAVE_REMOTE_LCD))
1272 \param font
1273 \description Set default font
1274
1275void lcd_remote_set_background(unsigned background)
1276 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1277 \param background
1278 \description
1279
1280void lcd_remote_set_contrast(int x)
1281 \group remote lcd
1282 \conditions (defined(HAVE_REMOTE_LCD))
1283 \param x
1284 \description
1285
1286void lcd_remote_set_drawmode(int mode)
1287 \group remote lcd
1288 \conditions (defined(HAVE_REMOTE_LCD))
1289 \param mode
1290 \description
1291
1292void lcd_remote_set_foreground(unsigned foreground)
1293 \conditions (defined(HAVE_REMOTE_LCD) && (LCD_REMOTE_DEPTH > 1))
1294 \param foreground
1295 \description
1296
1297void lcd_remote_stop_scroll(void)
1298 \group remote lcd
1299 \conditions (defined(HAVE_REMOTE_LCD))
1300 \description Stop all scrolling lines on the screen
1301
1302void lcd_remote_update(void)
1303 \group remote lcd
1304 \conditions (defined(HAVE_REMOTE_LCD))
1305 \description
1306
1307void lcd_remote_update_rect(int x, int y, int width, int height)
1308 \group remote lcd
1309 \conditions (defined(HAVE_REMOTE_LCD))
1310 \param x
1311 \param y
1312 \param width
1313 \param height
1314 \description
1315
1316void lcd_remote_vline(int x, int y1, int y2)
1317 \group remote lcd
1318 \conditions (defined(HAVE_REMOTE_LCD))
1319 \param x
1320 \param y1
1321 \param y2
1322 \description
1323
1324void lcd_remove_cursor(void)
1325 \group lcd
1326 \conditions (defined(HAVE_LCD_CHARCELLS))
1327 \description Remove the cursor from the screen
1328
1329void lcd_setfont(int font)
1330 \group lcd
1331 \conditions !defined(HAVE_LCD_CHARCELLS)
1332 \param font
1333 \description Set default font
1334
1335void lcd_set_backdrop(fb_data* backdrop)
1336 \group lcd
1337 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1338 \param backdrop Pointer to backdrop image
1339 \description Set the backdrop to =backdrop=
1340 \see lcd_framebuffer
1341
1342void lcd_set_background(unsigned foreground)
1343 \group lcd
1344 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1345 \param foreground
1346 \description
1347
1348void lcd_set_contrast(int x)
1349 \group lcd
1350 \param x Should be between =MIN_CONTRAST_SETTING= and =MAX_CONTRAST_SETTING=
1351 \description Sets LCD contrast to value =x=
1352
1353void lcd_set_drawmode(int mode)
1354 \group lcd
1355 \conditions !defined(HAVE_LCD_CHARCELLS)
1356 \param mode
1357 \description
1358
1359void lcd_set_foreground(unsigned foreground)
1360 \group lcd
1361 \conditions !defined(HAVE_LCD_CHARCELLS) && (LCD_DEPTH > 1)
1362 \param foreground
1363 \description
1364
1365void lcd_set_invert_display(bool yesno)
1366 \group lcd
1367 \conditions !defined(HAVE_LCD_CHARCELLS) )) && (defined(HAVE_LCD_INVERT
1368 \param yesno
1369 \description
1370
1371void lcd_stop_scroll(void)
1372 \group lcd
1373 \description Stop all scrolling lines on the screen
1374
1375void lcd_unlock_pattern(unsigned long ucs)
1376 \group lcd
1377 \conditions (defined(HAVE_LCD_CHARCELLS))
1378 \param ucs
1379 \description Unlock pattern of index =ucs=
1380
1381void lcd_update(void)
1382 \group lcd
1383 \description Pushes LCD framebuffer changes to the LCD
1384
1385void lcd_update_rect(int x, int y, int width, int height)
1386 \group lcd
1387 \conditions !defined(HAVE_LCD_CHARCELLS)
1388 \param x measured in pixels
1389 \param y measured in pixels
1390 \param width measured in pixels
1391 \param height measured in pixels
1392 \description Pushes LCD framebuffer changes to the LCD within rectangle (=x=, =y=) -> (=x= + =width=, =y= + =height=). Notice that the smallest vertical resolution in updates that the hardware supports is 8 pixels.
1393
1394void lcd_vline(int x, int y1, int y2)
1395 \group lcd
1396 \conditions !defined(HAVE_LCD_CHARCELLS)
1397 \param x X coordinate
1398 \param y1 Y start coordinate
1399 \param y2 Y end coordinate
1400 \description Draws a vertical line at (=x=, =y1=) -> (=x=, =y2=) within current drawing mode
1401
1402void lcd_yuv_set_options(unsigned options)
1403 \group lcd
1404 \conditions !defined(HAVE_LCD_CHARCELLS) )) && (LCD_DEPTH == 16) && (defined(TOSHIBA_GIGABEAT_F) || defined(SANSA_E200) || defined(SANSA_C200) || defined(IRIVER_H10) || defined(COWON_D2
1405 \param options
1406 \description
1407
1408void led(bool on)
1409 \param on
1410 \description
1411
1412void logf(const char *fmt, ...) ATTRIBUTE_PRINTF(1, 2)
1413 \group misc
1414 \conditions (defined(ROCKBOX_HAS_LOGF))
1415 \param fmt
1416 \description
1417
1418const unsigned long *audio_master_sampr_list
1419 \group sound
1420 \conditions (CONFIG_CODEC == SWCODEC)
1421 \return
1422 \description
1423
1424const unsigned long *hw_freq_sampr
1425 \group sound
1426 \conditions (CONFIG_CODEC == SWCODEC)
1427 \return
1428 \description
1429
1430const unsigned long *rec_freq_sampr
1431 \group sound
1432 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1433 \return
1434 \description
1435
1436int mas_codec_readreg(int reg)
1437 \group MAS communication
1438 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
1439 \param reg
1440 \return
1441 \description
1442
1443int mas_codec_writereg(int reg, unsigned int val)
1444 \group MAS communication
1445 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)) && ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
1446 \param reg
1447 \param val
1448 \return
1449 \description
1450
1451int mas_readmem(int bank, int addr, unsigned long* dest, int len)
1452 \group MAS communication
1453 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC))
1454 \param bank
1455 \param addr
1456 \param dest
1457 \param len
1458 \return
1459 \description
1460
1461int mas_readreg(int reg)
1462 \group MAS communication
1463 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC))
1464 \param reg
1465 \return
1466 \description
1467
1468int mas_writemem(int bank, int addr, const unsigned long* src, int len)
1469 \group MAS communication
1470 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC))
1471 \param bank
1472 \param addr
1473 \param src
1474 \param len
1475 \return
1476 \description
1477
1478int mas_writereg(int reg, unsigned int val)
1479 \group MAS communication
1480 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC))
1481 \param reg
1482 \param val
1483 \return
1484 \description
1485
1486void *memchr(const void *s1, int c, size_t n)
1487 \group strings and memory
1488 \param s1
1489 \param c
1490 \param n
1491 \return
1492 \description
1493
1494int memcmp(const void *s1, const void *s2, size_t n)
1495 \group strings and memory
1496 \param s1
1497 \param s2
1498 \param n
1499 \return
1500 \description
1501
1502void* memcpy(void *out, const void *in, size_t n)
1503 \group strings and memory
1504 \param out
1505 \param in
1506 \param n
1507 \return
1508 \description Copies =n= bytes of data in memory from =in= to =out=
1509
1510void* memmove(void *out, const void *in, size_t n)
1511 \group strings and memory
1512 \param out
1513 \param in
1514 \param n
1515 \return
1516 \description
1517
1518void* memset(void *dst, int c, size_t length)
1519 \group strings and memory
1520 \param dst
1521 \param c
1522 \param length
1523 \return
1524 \description Fills a memory region with specified byte value =c=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001525
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001526int mkdir(const char *name)
1527 \group dir
1528 \param name
1529 \return
1530 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001531
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001532time_t mktime(struct tm *t)
1533 \group misc
1534 \conditions (CONFIG_RTC)
1535 \param t
1536 \return
1537 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001538
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001539bool mp3info(struct mp3entry *entry, const char *filename)
1540 \group misc
1541 \param entry
1542 \param filename
1543 \return FALSE if successfull
1544 \description The given =entry= is filled in with whatever id3 info it could find about the given =filename=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001545
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001546bool mp3_is_playing(void)
1547 \group sound
1548 \conditions (!defined(SIMULATOR))
1549 \return true if an mp3 is playing, else return false
1550 \description Note: a paused mp3 is considered as a playing mp3
Björn Stenberg6d0da412004-08-17 06:54:08 +00001551
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001552void mp3_play_data(const unsigned char* start, int size, void (*get_more)(unsigned char** start, size_t* size))
1553 \group sound
1554 \conditions (!defined(SIMULATOR))
1555 \param start points to the begining of the file to play
1556 \param size is the size to play
1557 \param get_more is a callback function
1558 \description Plays a chunk of an mp3 file
Björn Stenberg6d0da412004-08-17 06:54:08 +00001559
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001560void mp3_play_pause(bool play)
1561 \group sound
1562 \conditions (!defined(SIMULATOR))
1563 \param play
1564 \description If playback was paused and =play= is TRUE, resume playback. If playback isn't paused and =play= is FALSE, pause playback.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001565
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001566void mp3_play_stop(void)
1567 \group sound
1568 \conditions (!defined(SIMULATOR))
1569 \description Stops playback
Björn Stenberg6d0da412004-08-17 06:54:08 +00001570
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001571unsigned long mpeg_get_last_header(void)
1572 \group playback control
1573 \conditions (!defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC))
1574 \return
1575 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001576
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001577void mutex_init(struct mutex *m)
1578 \group kernel/ system
1579 \conditions (CONFIG_CODEC == SWCODEC)
1580 \param m
1581 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001582
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001583void mutex_lock(struct mutex *m)
1584 \group kernel/ system
1585 \conditions (CONFIG_CODEC == SWCODEC)
1586 \param m
1587 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001588
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001589void mutex_unlock(struct mutex *m)
1590 \group kernel/ system
1591 \conditions (CONFIG_CODEC == SWCODEC)
1592 \param m
1593 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001594
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001595DIR* opendir(const char* name)
1596 \group dir
1597 \param name
1598 \return a pointer to the directory stream
1599 \description The opendir() function opens a directory stream corresponding to the directory name. The stream is positioned at the first entry in the directory.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001600
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001601bool option_screen(const struct settings_list *setting, struct viewport parent[NB_SCREENS], bool use_temp_var, unsigned char* option_title)
1602 \group options
1603 \param setting
1604 \param parent[NB_SCREENS]
1605 \param use_temp_var
1606 \param option_title
1607 \return
1608 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001609
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001610void pcm_apply_settings(void)
1611 \group sound
1612 \conditions (CONFIG_CODEC == SWCODEC)
1613 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001614
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001615void pcm_calculate_peaks(int *left, int *right)
1616 \group sound
1617 \conditions (CONFIG_CODEC == SWCODEC)
1618 \param left
1619 \param right
1620 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001621
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001622void pcm_calculate_rec_peaks(int *left, int *right)
1623 \group sound
1624 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1625 \param left
1626 \param right
1627 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001628
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001629void pcm_close_recording(void)
1630 \group sound
1631 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1632 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001633
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001634size_t pcm_get_bytes_waiting(void)
1635 \group sound
1636 \conditions (CONFIG_CODEC == SWCODEC)
1637 \return
1638 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001639
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001640void pcm_init_recording(void)
1641 \group sound
1642 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1643 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001644
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001645bool pcm_is_paused(void)
1646 \group sound
1647 \conditions (CONFIG_CODEC == SWCODEC)
1648 \return true if playback is paused, else false
1649 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001650
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001651bool pcm_is_playing(void)
1652 \group sound
1653 \conditions (CONFIG_CODEC == SWCODEC)
1654 \return true unless playback is paused
1655 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001656
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001657void pcm_play_data(pcm_more_callback_type get_more, unsigned char* start, size_t size)
1658 \group sound
1659 \conditions (CONFIG_CODEC == SWCODEC)
1660 \param get_more Optional callback
1661 \param start is the address of raw 16-16, interleaved PCM data
1662 \param size is the size of the data to play
1663 \description May be used without the callback parameter in order to play a single clip. If you wish to play sound continuously, then use the callback instead and return the buffer address and size to be played from that callback. Every time that a buffer is played out, the callback is asked for the next buffer to play but without stopping and starting playback. The callback is called asynchronously in interrupt context so what you may do in there is limited.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001664
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001665void pcm_play_lock(void)
1666 \group sound
1667 \conditions (CONFIG_CODEC == SWCODEC)
1668 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001669
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001670void pcm_play_pause(bool play)
1671 \group sound
1672 \conditions (CONFIG_CODEC == SWCODEC)
1673 \param play
1674 \description Pauses or unpauses the playback depending on the truth value of =play=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001675
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001676void pcm_play_stop(void)
1677 \group sound
1678 \conditions (CONFIG_CODEC == SWCODEC)
1679 \description Stops the playback and empties the audio buffer unlike [F[pcm_play_pause]]
Björn Stenberg6d0da412004-08-17 06:54:08 +00001680
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001681void pcm_play_unlock(void)
1682 \group sound
1683 \conditions (CONFIG_CODEC == SWCODEC)
1684 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001685
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001686void pcm_record_data(pcm_more_callback_type2 more_ready, void *start, size_t size)
1687 \group sound
1688 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1689 \param more_ready
1690 \param start
1691 \param size
1692 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001693
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001694void pcm_record_more(void *start, size_t size)
1695 \group sound
1696 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1697 \param start
1698 \param size
1699 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001700
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001701void pcm_set_frequency(unsigned int frequency)
1702 \group sound
1703 \conditions (CONFIG_CODEC == SWCODEC)
1704 \param frequency
1705 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001706
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001707void pcm_stop_recording(void)
1708 \group sound
1709 \conditions (CONFIG_CODEC == SWCODEC) && (defined(HAVE_RECORDING))
1710 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001711
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001712bool peak_meter_get_use_dbfs(void)
1713 \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
1714 \return 1 if the meter currently is displaying dBfs values, 0 if the meter is displaying percent values
1715 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001716
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001717unsigned short peak_meter_scale_value(unsigned short val, int meterwidth)
1718 \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
1719 \param val is the volume value (range: 0 <= val < MAX_PEAK)
1720 \param meterwidth is the width of the meter in pixel
1721 \return a value between 0 and meterwidth
1722 \description Scales a peak value as read from the MAS to the range of =meterwidth=. The scaling is performed according to the scaling method (dBfs / linear) and the range (peak_meter_range_min .. peak_meter_range_max).
Björn Stenberg6d0da412004-08-17 06:54:08 +00001723
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001724void peak_meter_set_use_dbfs(bool use)
1725 \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F))
1726 \param use If =use= is 0 use linear percent scale, else use dBfs
1727 \description Specifies whether the values displayed are scaled as dBfs or as linear percent values
Björn Stenberg6d0da412004-08-17 06:54:08 +00001728
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001729int playlist_amount(void)
1730 \group playback control
1731 \return the number of tracks in current playlist
1732 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001733
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001734int playlist_resume(void)
1735 \group playback control
1736 \return
1737 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001738
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001739int playlist_start(int start_index, int offset)
1740 \group playback control
1741 \param start_index
1742 \param offset
1743 \return
1744 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001745
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001746void* plugin_get_audio_buffer(size_t *buffer_size)
1747 \group misc
1748 \param buffer_size
1749 \return
1750 \description Steals =buffer_size= bytes from the available RAM, reducing the available buffer for audio buffering
Björn Stenberg6d0da412004-08-17 06:54:08 +00001751
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001752void* plugin_get_buffer(size_t *buffer_size)
1753 \group misc
1754 \param buffer_size this is the memory size left in plugin buffer upon return
1755 \return a pointer to the portion of the plugin buffer that is not already being used. If no plugin is loaded, returns the entire plugin buffer.
1756 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001757
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001758char* plugin_get_current_filename(void)
1759 \group misc
1760 \return
1761 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001762
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001763void plugin_iram_init(char *iramstart, char *iramcopy, size_t iram_size, char *iedata, size_t iedata_size)
1764 \group misc
1765 \conditions (defined(PLUGIN_USE_IRAM))
1766 \param iramstart
1767 \param iramcopy
1768 \param iram_size
1769 \param iedata
1770 \param iedata_size
1771 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001772
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001773void plugin_tsr(bool (*exit_callback)(bool reenter))
1774 \group misc
1775 \param exit_callback
1776 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001777
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001778void PREFIX(audio_play)(long offset)
1779 \group playback control
1780 \param audio_play
1781 \param offset
1782 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001783
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001784int PREFIX(close)(int fd)
1785 \group file
1786 \param close
1787 \param fd
1788 \return 0 upon success
1789 \description The close() function will deallocate the file descriptor indicated by =fd=. To deallocate means to make the file descriptor available for return by subsequent calls to open() or other functions that allocate file descriptors.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001790
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001791int PREFIX(creat)(const char *pathname)
1792 \group file
1793 \param creat
1794 \param pathname
1795 \return the file descriptor associated to this file
1796 \description Create a file with mode O_RDONLY, O_WRONLY or O_RDWR
Björn Stenberg6d0da412004-08-17 06:54:08 +00001797
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001798off_t PREFIX(filesize)(int fd)
1799 \group file
1800 \param filesize
1801 \param fd
1802 \return size of a file; upon error, returns -1
1803 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001804
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001805int PREFIX(ftruncate)(int fd, off_t length)
1806 \group file
1807 \param ftruncate
1808 \param fd
1809 \param length
1810 \return
1811 \description Truncate file to the specified =length=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001812
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001813off_t PREFIX(lseek)(int fd, off_t offset, int whence)
1814 \group file
1815 \param lseek
1816 \param fd
1817 \param offset
1818 \param whence
1819 \return
1820 \description The lseek() function sets the file pointer associated with the open file descriptor specified by =fd= as follows: If =whence= is SEEK_SET, the pointer is set to =offset= bytes. If =whence= is SEEK_CUR, the pointer is set to its current location plus =offset=. If =whence= is SEEK_END, the pointer is set to the size of the file plus =offset=.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001821
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001822int PREFIX(open)(const char* pathname, int flags)
1823 \group file
1824 \param open
1825 \param pathname
1826 \param flags
1827 \return
1828 \description The open() function establishes the connection between a file and a file descriptor. It creates an open file description that refers to a file and a file descriptor that refers to that open file description. The file descriptor is used by other I/O functions to refer to that file.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001829
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001830ssize_t PREFIX(read)(int fd, void* buf, size_t count)
1831 \group file
1832 \param read
1833 \param fd
1834 \param buf
1835 \param count
1836 \return
1837 \description The read() function attempts to read =count= bytes from the file associated with the open file descriptor, =fd=, into the buffer pointed to by =buf=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001838
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001839int PREFIX(remove)(const char* pathname)
1840 \group file
1841 \param remove
1842 \param pathname
1843 \return
1844 \description remove() deletes a name from the filesystem. It calls unlink for files, and rmdir for directories.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001845
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001846int PREFIX(rename)(const char* path, const char* newname)
1847 \group file
1848 \param rename
1849 \param path points to the pathname of the file to be renamed
1850 \param newname points to the new pathname of the file
1851 \return
1852 \description The rename() function changes the name of a file
Björn Stenberg6d0da412004-08-17 06:54:08 +00001853
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001854void PREFIX(sleep)(int ticks)
1855 \group kernel/ system
1856 \param sleep
1857 \param ticks
1858 \description Sleep a specified number of =ticks=, we have HZ ticks per second
Björn Stenberg6d0da412004-08-17 06:54:08 +00001859
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001860ssize_t PREFIX(write)(int fd, const void* buf, size_t count)
1861 \group file
1862 \param write
1863 \param fd
1864 \param buf
1865 \param count
1866 \return
1867 \description Write writes up to =count= bytes to the file referenced by the file descriptor =fd= from the buffer starting at =buf=
Björn Stenberg6d0da412004-08-17 06:54:08 +00001868
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001869void profile_func_enter(void *this_fn, void *call_site)
1870 \conditions (defined(RB_PROFILE))
1871 \param this_fn
1872 \param call_site
1873 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001874
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001875void profile_func_exit(void *this_fn, void *call_site)
1876 \conditions (defined(RB_PROFILE))
1877 \param this_fn
1878 \param call_site
1879 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001880
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001881void profile_thread(void)
1882 \conditions (defined(RB_PROFILE))
1883 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001884
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001885void profstop(void)
1886 \conditions (defined(RB_PROFILE))
1887 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001888
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001889void qsort(void *base, size_t nmemb, size_t size, int(*compar)(const void *, const void *))
1890 \group misc
1891 \param base start of array
1892 \param nmemb number of elements
1893 \param size describes the size of each element of the array
1894 \param compar
1895 \description qsort sorts an array (begining at =base=) of =nmemb= objects
Björn Stenberg6d0da412004-08-17 06:54:08 +00001896
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001897void queue_delete(struct event_queue *q)
1898 \param q
1899 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001900
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001901bool queue_empty(const struct event_queue *q)
1902 \conditions (CONFIG_CODEC == SWCODEC)
1903 \param q
1904 \return
1905 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001906
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001907void queue_enable_queue_send(struct event_queue *q, struct queue_sender_list *send, struct thread_entry *owner)
1908 \conditions (CONFIG_CODEC == SWCODEC)
1909 \param q
1910 \param send
1911 \param owner
1912 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001913
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001914void queue_init(struct event_queue *q, bool register_queue)
1915 \param q
1916 \param register_queue
1917 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001918
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001919void queue_post(struct event_queue *q, long id, intptr_t data)
1920 \param q
1921 \param id
1922 \param data
1923 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001924
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001925void queue_reply(struct event_queue *q, intptr_t retval)
1926 \conditions (CONFIG_CODEC == SWCODEC)
1927 \param q
1928 \param retval
1929 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001930
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001931intptr_t queue_send(struct event_queue *q, long id, intptr_t data)
1932 \conditions (CONFIG_CODEC == SWCODEC)
1933 \param q
1934 \param id
1935 \param data
1936 \return
1937 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001938
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001939void queue_wait(struct event_queue *q, struct queue_event *ev)
1940 \conditions (CONFIG_CODEC == SWCODEC)
1941 \param q
1942 \param ev
1943 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001944
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001945void queue_wait_w_tmo(struct event_queue *q, struct queue_event *ev, int ticks)
1946 \param q
1947 \param ev
1948 \param ticks
1949 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001950
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001951int rand(void)
1952 \group misc
1953 \return a pseudo random number between 0 and 0x7fffffff
1954 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001955
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001956struct dirent* readdir(DIR* dir)
1957 \group dir
1958 \param dir
1959 \return a pointer to a dirent structure representing the next directory entry in the directory stream pointed to by =dir= or NULL on reaching the end-of-file or if an error occurred
1960 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001961
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001962int read_bmp_file(const char* filename, struct bitmap *bm, int maxsize, int format)
1963 \conditions (defined(HAVE_LCD_BITMAP))
1964 \param filename
1965 \param bm
1966 \param maxsize
1967 \param format
1968 \return
1969 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001970
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001971int read_line(int fd, char* buffer, int buffer_size)
1972 \group file
1973 \param fd
1974 \param buffer
1975 \param buffer_size
1976 \return number of bytes read (which may be larger than the number of bytes stored in buffer) or upon error -1 (and buffer contains whatever could be read)
1977 \description Read (up to) a line of text from =fd= into =buffer=. A line is terminated by a LF char. Neither LF nor CR chars are stored in buffer.
Björn Stenberg6d0da412004-08-17 06:54:08 +00001978
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001979void register_ata_idle_func(ata_idle_notify function)
1980 \group file
1981 \conditions (USING_ATA_CALLBACK)
1982 \param function
1983 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001984
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001985void reload_directory(void)
1986 \group file
1987 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00001988
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001989void remote_backlight_off(void)
1990 \conditions (defined(HAVE_REMOTE_LCD))
1991 \description Turns the remote backlight off
Björn Stenberg6d0da412004-08-17 06:54:08 +00001992
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001993void remote_backlight_on(void)
1994 \conditions (defined(HAVE_REMOTE_LCD))
1995 \description Turns the remote backlight on
Björn Stenberg6d0da412004-08-17 06:54:08 +00001996
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00001997void remote_backlight_set_timeout(int index)
1998 \conditions (defined(HAVE_REMOTE_LCD))
1999 \param index
2000 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002001
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002002void remote_backlight_set_timeout_plugged(int index)
2003 \conditions (defined(HAVE_REMOTE_LCD)) && (CONFIG_CHARGING)
2004 \param index
2005 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002006
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002007void reset_poweroff_timer(void)
2008 \description The function name pretty much says what it's supposed to do
Björn Stenberg6d0da412004-08-17 06:54:08 +00002009
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002010int rmdir(const char *name)
2011 \group dir
2012 \param name
2013 \return
2014 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002015
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002016struct screen* screens[NB_SCREENS]
2017 \return
2018 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002019
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002020void screen_clear_area(struct screen * display, int xstart, int ystart, int width, int height)
2021 \conditions !defined(HAVE_LCD_CHARCELLS)
2022 \param display
2023 \param xstart
2024 \param ystart
2025 \param width
2026 \param height
2027 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002028
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002029void screen_dump_set_hook(void (*hook)(int fh))
2030 \conditions (defined(HAVE_LCD_BITMAP))
2031 \param hook
2032 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002033
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002034bool search_albumart_files(const struct mp3entry *id3, const char *size_string, char *buf, int buflen)
2035 \conditions (defined(HAVE_ALBUMART))
2036 \param id3
2037 \param size_string
2038 \param buf Pointer to output
2039 \param buflen Max length for =buf=
2040 \return true if an album art was found
2041 \description Searches the the album art file for the given =id3= struct, appending the =size_string= to the search pattern (cover.bmp). It writes the complete path into =buf=, but not more bytes than =buflen=.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002042
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002043void semaphore_init(struct semaphore *s, int max, int start)
2044 \conditions (defined(HAVE_SEMAPHORE_OBJECTS))
2045 \param s
2046 \param max
2047 \param start
2048 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002049
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002050void semaphore_release(struct semaphore *s)
2051 \conditions (defined(HAVE_SEMAPHORE_OBJECTS))
2052 \param s
2053 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002054
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002055void semaphore_wait(struct semaphore *s)
2056 \conditions (defined(HAVE_SEMAPHORE_OBJECTS))
2057 \param s
2058 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002059
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002060const struct settings_list* find_setting(const void* variable, int *id)
2061 \group options
2062 \param variable
2063 \param id
2064 \return
2065 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002066
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002067bool settings_parseline(char* line, char** name, char** value)
2068 \group file
2069 \param line
2070 \param name
2071 \param value
2072 \return false if no valid config entry was found
2073 \description Parse a line from a configuration file. The line format is: 'name: value'. Any whitespace before setting name or value (after ':') is ignored. A # as first non-whitespace character discards the whole line. Function sets pointers to null-terminated setting name and value.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002074
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002075bool set_bool(const char* string, const bool* variable )
2076 \group options
2077 \param string
2078 \param variable
2079 \return
2080 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002081
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002082bool set_bool_options(const char* string, const bool* variable, const char* yes_str, int yes_voice, const char* no_str, int no_voice, void (*function)(bool))
2083 \group options
2084 \param string
2085 \param variable
2086 \param yes_str
2087 \param yes_voice
2088 \param no_str
2089 \param no_voice
2090 \param function
2091 \return
2092 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002093
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002094bool set_color(struct screen *display, char *title, unsigned *color, unsigned banned_color)
2095 \conditions (defined(HAVE_LCD_COLOR))
2096 \param display
2097 \param title
2098 \param color
2099 \param banned_color
2100 \return
2101 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002102
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002103void set_current_file(char* path)
2104 \param path
2105 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002106
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002107void set_dirfilter(int l_dirfilter)
2108 \param l_dirfilter
2109 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002110
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002111bool set_int(const unsigned char* string, const char* unit, int voice_unit, const int* variable, void (*function)(int), int step, int min, int max, void (*formatter)(char*, size_t, int, const char*) )
2112 \group options
2113 \param string
2114 \param unit
2115 \param voice_unit
2116 \param variable
2117 \param function
2118 \param step
2119 \param min
2120 \param max
2121 \param formatter
2122 \return
2123 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002124
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002125bool set_option(const char* string, const void* variable, enum optiontype type, const struct opt_items* options, int numoptions, void (*function)(int))
2126 \group options
2127 \param string
2128 \param variable
2129 \param type
2130 \param options
2131 \param numoptions
2132 \param function
2133 \return
2134 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002135
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002136int set_time(const struct tm *tm)
2137 \group misc
2138 \param tm
2139 \return FALSE upon success
2140 \description Set current time
2141 \see get_time
Björn Stenberg6d0da412004-08-17 06:54:08 +00002142
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002143int show_logo(void)
2144 \return
2145 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002146
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002147void simplelist_info_init(struct simplelist_info *info, char* title, int count, void* data)
2148 \group list
2149 \param info
2150 \param title
2151 \param count
2152 \param data
2153 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002154
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002155bool simplelist_show_list(struct simplelist_info *info)
2156 \group list
2157 \param info
2158 \return
2159 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002160
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002161void sim_lcd_ex_init(int shades, unsigned long (*getpixel)(int, int))
2162 \group special simulator hooks
2163 \conditions (defined(SIMULATOR)) && (defined(HAVE_LCD_BITMAP) && LCD_DEPTH < 8)
2164 \param shades
2165 \param getpixel
2166 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002167
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002168void sim_lcd_ex_update_rect(int x, int y, int width, int height)
2169 \group special simulator hooks
2170 \conditions (defined(SIMULATOR)) && (defined(HAVE_LCD_BITMAP) && LCD_DEPTH < 8)
2171 \param x
2172 \param y
2173 \param width
2174 \param height
2175 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002176
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002177int snprintf(char *buf, size_t size, const char *fmt, ...) ATTRIBUTE_PRINTF(3, 4)
2178 \group strings and memory
2179 \param buf
2180 \param size
2181 \param fmt
2182 \return the number of characters printed or that would have been printed if the output was truncated (not including the trailing NULL character) upon success
2183 \description Write a formatted string =fmt= in buffer =buf= of size =size= (including the trailing NULL character). These support %c, %s, %d and %x only with the width and zero padding flag only.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002184
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002185int sound_default(int setting)
2186 \group sound
2187 \param setting
2188 \return
2189 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002190
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002191int sound_max(int setting)
2192 \group sound
2193 \param setting
2194 \return
2195 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002196
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002197int sound_min(int setting)
2198 \group sound
2199 \param setting
2200 \return
2201 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002202
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002203void sound_set(int setting, int value)
2204 \group sound
2205 \param setting
2206 \param value
2207 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002208
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002209void sound_set_pitch(int pitch)
2210 \group playback control
2211 \conditions ((CONFIG_CODEC == MAS3587F) || (CONFIG_CODEC == MAS3539F) || (CONFIG_CODEC == SWCODEC))
2212 \param pitch
2213 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002214
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002215const char * sound_unit(int setting)
2216 \group sound
2217 \param setting
2218 \return
2219 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002220
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002221int sound_val2phys(int setting, int value)
2222 \group sound
2223 \param setting
2224 \param value
2225 \return
2226 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002227
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002228void splash(int ticks, const char *str)
2229 \param ticks
2230 \param str
2231 \description Display a formatted string in a box for =ticks= time. The string is formatted as with the printf function. (there are =HZ= ticks per second)
Björn Stenberg6d0da412004-08-17 06:54:08 +00002232
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002233void splashf(int ticks, const char *fmt, ...) ATTRIBUTE_PRINTF(2, 3)
2234 \param ticks
2235 \param fmt
2236 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002237
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002238void srand(unsigned int seed)
2239 \group misc
2240 \param seed
2241 \description Seed the random number generator
Björn Stenberg6d0da412004-08-17 06:54:08 +00002242
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002243struct gui_syncstatusbar *statusbars
2244 \group scroll bar
2245 \return
2246 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002247
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002248int strcasecmp(const char *, const char *)
2249 \group strings and memory
2250 \param
2251 \param
2252 \return an integer less than, equal to, or greater than zero if s1 is found, respectively, to be less than, to match, or be greater than s2
2253 \description The strcasecmp() function compares the two strings s1 and s2, ignoring the case of the characters
Björn Stenberg6d0da412004-08-17 06:54:08 +00002254
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002255char *strcat(char *s1, const char *s2)
2256 \group strings and memory
2257 \param s1
2258 \param s2
2259 \return =s1= concatenated with =s2=
2260 \description Appends =s2= to =s1=, replacing the NULL terminating character of =s1= and returns it
Björn Stenberg6d0da412004-08-17 06:54:08 +00002261
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002262char *strchr(const char *s, int c)
2263 \group strings and memory
2264 \param s
2265 \param c
2266 \return
2267 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002268
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002269int strcmp(const char *, const char *)
2270 \group strings and memory
2271 \param
2272 \param
2273 \return
2274 \description strcmp() compares the string a to string b. If a sorts lexicographically after b, strcmp returns a number greater than zero. If the two strings match, strcmp returns zero. If a sorts lexicographically before b, strcmp returns a number less than zero.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002275
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002276char* strcpy(char *dst, const char *src)
2277 \group strings and memory
2278 \param dst
2279 \param src
2280 \return the initial value of =dst=
2281 \description strcpy() copies the string pointed to by =src= (including the terminating null character) to the array pointed to by =dst=
Björn Stenberg6d0da412004-08-17 06:54:08 +00002282
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002283size_t strlen(const char *str)
2284 \group strings and memory
2285 \param str
2286 \return the character count
2287 \description The strlen() function works out the length of the string starting at =str= by counting characters until it reaches a null character.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002288
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002289int strncasecmp(const char *s1, const char *s2, size_t n)
2290 \group strings and memory
2291 \param s1
2292 \param s2
2293 \param n
2294 \return
2295 \description Like strcasecmp() but only on the first =n= characters
2296 \see strcasecmp
Björn Stenberg6d0da412004-08-17 06:54:08 +00002297
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002298int strncmp(const char *, const char *, size_t)
2299 \group strings and memory
2300 \param
2301 \param
2302 \param size_t
2303 \return
2304 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002305
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002306char* strncpy(char *dst, const char *src, size_t length)
2307 \group strings and memory
2308 \param dst
2309 \param src
2310 \param length
2311 \return the initial value of =dst=
2312 \description strncpy() copies not more than =length= characters from the string pointed to by =src= (including the terminating null character) to the array pointed to by =dst=. If the string pointed to by =src= is shorter than length characters, null characters are appended to the destination array until a total of =length= characters have been written.
Björn Stenberg6d0da412004-08-17 06:54:08 +00002313
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002314char * strrchr(const char *s, int c)
2315 \group strings and memory
2316 \param s
2317 \param c
2318 \return a pointer to the located character, or a null pointer if =c= does not occur in string.
2319 \description This function finds the last occurence of =c= (converted to a char) in the string pointed to by string (including the terminating null character)
Björn Stenberg6d0da412004-08-17 06:54:08 +00002320
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002321char* strtok_r(char *ptr, const char *sep, char **end)
2322 \group strings and memory
2323 \param ptr
2324 \param sep
2325 \param end
2326 \return
2327 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002328
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002329int system_memory_guard(int newmode)
2330 \conditions (!defined(SIMULATOR))
2331 \param newmode
2332 \return
2333 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002334
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002335bool tagcache_get_next(struct tagcache_search *tcs)
2336 \conditions (defined(HAVE_TAGCACHE))
2337 \param tcs
2338 \return
2339 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002340
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002341long tagcache_get_numeric(const struct tagcache_search *tcs, int tag)
2342 \conditions (defined(HAVE_TAGCACHE))
2343 \param tcs
2344 \param tag
2345 \return
2346 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002347
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002348bool tagcache_retrieve(struct tagcache_search *tcs, int idxid, int tag, char *buf, long size)
2349 \conditions (defined(HAVE_TAGCACHE))
2350 \param tcs
2351 \param idxid
2352 \param tag
2353 \param buf
2354 \param size
2355 \return
2356 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002357
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002358bool tagcache_search(struct tagcache_search *tcs, int tag)
2359 \conditions (defined(HAVE_TAGCACHE))
2360 \param tcs
2361 \param tag
2362 \return
2363 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002364
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002365bool tagcache_search_add_filter(struct tagcache_search *tcs, int tag, int seek)
2366 \conditions (defined(HAVE_TAGCACHE))
2367 \param tcs
2368 \param tag
2369 \param seek
2370 \return
2371 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002372
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002373void tagcache_search_finish(struct tagcache_search *tcs)
2374 \conditions (defined(HAVE_TAGCACHE))
2375 \param tcs
2376 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002377
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002378void tagcache_search_set_uniqbuf(struct tagcache_search *tcs, void *buffer, long length)
2379 \conditions (defined(HAVE_TAGCACHE))
2380 \param tcs
2381 \param buffer
2382 \param length
2383 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002384
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002385void talk_disable(bool disable)
2386 \group misc
2387 \param disable
2388 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002389
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002390struct thread_entry* threads
2391 \group kernel/ system
2392 \return
2393 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002394
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002395void thread_exit(void)
2396 \group kernel/ system
2397 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002398
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002399void thread_thaw(struct thread_entry *thread)
2400 \param thread
2401 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002402
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002403void thread_wait(struct thread_entry *thread)
2404 \group kernel/ system
2405 \param thread
2406 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002407
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002408bool timer_register(int reg_prio, void (*unregister_callback)(void), long cycles, void (*timer_callback)(void) IF_COP(, int core))
2409 \param reg_prio
2410 \param unregister_callback
2411 \param cycles
2412 \param core
2413 \param timer_callback
2414 \return
2415 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002416
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002417bool timer_set_period(long count)
2418 \param count
2419 \return
2420 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002421
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002422void timer_unregister(void)
2423 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002424
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002425void touchscreen_set_mode(enum touchscreen_mode)
2426 \group button
2427 \conditions (defined(HAVE_TOUCHSCREEN))
2428 \param touchscreen_mode
2429 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002430
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002431struct tree_context* tree_get_context(void)
2432 \return
2433 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002434
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002435void trigger_cpu_boost(void)
2436 \conditions (defined(HAVE_SCHEDULER_BOOSTCTRL))
2437 \description Boosts the CPU for the current thread
Björn Stenberg6d0da412004-08-17 06:54:08 +00002438
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002439void unregister_ata_idle_func(ata_idle_notify function, bool run)
2440 \group file
2441 \conditions (USING_ATA_CALLBACK)
2442 \param function
2443 \param run
2444 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002445
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002446void usb_acknowledge(long id)
2447 \param id
2448 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002449
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002450bool usb_powered(void)
2451 \group power
2452 \conditions (defined(HAVE_USB_POWER))
2453 \return
2454 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002455
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002456unsigned char* utf8encode(unsigned long ucs, unsigned char *utf8)
2457 \group unicode stuff
2458 \param ucs
2459 \param utf8
2460 \return
2461 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002462
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002463unsigned long utf8length(const unsigned char *utf8)
2464 \group unicode stuff
2465 \param utf8
2466 \return
2467 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002468
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002469int utf8seek(const unsigned char* utf8, int offset)
2470 \group unicode stuff
2471 \param utf8
2472 \param offset
2473 \return
2474 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002475
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002476unsigned char* utf16BEdecode(const unsigned char *utf16, unsigned char *utf8, int count)
2477 \group unicode stuff
2478 \param utf16
2479 \param utf8
2480 \param count
2481 \return
2482 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002483
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002484unsigned char* utf16LEdecode(const unsigned char *utf16, unsigned char *utf8, int count)
2485 \group unicode stuff
2486 \param utf16
2487 \param utf8
2488 \param count
2489 \return
2490 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002491
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002492void viewport_set_defaults(struct viewport *vp, enum screen_type screen)
2493 \param vp
2494 \param screen
2495 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002496
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002497int vsnprintf(char *buf, int size, const char *fmt, va_list ap)
2498 \group strings and memory
2499 \param buf
2500 \param size
2501 \param fmt
2502 \param ap
2503 \return
2504 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002505
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002506void wheel_send_events(bool send)
2507 \conditions (defined(HAVE_WHEEL_POSITION))
2508 \param send
2509 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002510
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002511int wheel_status(void)
2512 \conditions (defined(HAVE_WHEEL_POSITION))
2513 \return
2514 \description
Björn Stenberg6d0da412004-08-17 06:54:08 +00002515
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002516void yield(void)
2517 \group kernel/ system
2518 \description Let another thread run. This should be used as soon as you have to "wait" for something or similar, and also if you do anything that takes "a long time". This function is the entire foundation that our "cooperative multitasking" is based on. Use it!
2519 \see [W[RockboxKernel]]
Björn Stenberg6d0da412004-08-17 06:54:08 +00002520
Rafaël Carréccdaf0a2010-07-25 13:54:13 +00002521# END