* remove "\r" nonsense
[mascara-docs.git] / amd64 / bareMetalOS-0.5.3 / programs / libBareMetal.h
blobad2696caf68ca3be46fe849f40844c1463586ba9
1 // =============================================================================
2 // BareMetal -- a 64-bit OS written in Assembly for x86-64 systems
3 // Copyright (C) 2008-2012 Return Infinity -- see LICENSE.TXT
4 //
5 // The BareMetal OS C/C++ library header.
6 //
7 // Version 2.0
8 //
9 // This allows for a C/C++ program to access OS functions available in BareMetal OS
10 // =============================================================================
13 void b_print_string(const char *str);
14 void b_print_char(char chr);
15 void b_print_char_hex(char chr);
16 void b_print_newline(void);
17 void b_print_string_with_color(const char *str, unsigned char clr);
18 void b_print_char_with_color(char chr, unsigned char clr);
19 void b_print_char_hex_with_color(char chr, unsigned char clr);
22 unsigned char b_input_get_key(void);
23 unsigned char b_input_wait_for_key(void);
24 unsigned long b_input_string(unsigned char *str, unsigned long nbr);
27 unsigned long b_string_length(const unsigned char *str);
28 unsigned long b_string_find_char(const unsigned char *str, unsigned char chr);
29 void b_os_string_copy(unsigned char *dst, const unsigned char *src);
30 void b_int_to_string(unsigned long nbr, unsigned char *str);
31 unsigned long b_string_to_int(const unsigned char *str);
34 void b_delay(unsigned long nbr);
35 unsigned long b_get_argc();
36 char* b_get_argv(unsigned char nbr);
37 unsigned long b_get_timercounter(void);
40 void b_debug_dump_mem(void *data, unsigned int size);
43 void b_serial_send(unsigned char chr);
44 unsigned char b_serial_recv(void);
47 void b_file_read(const unsigned char *name, void *mem);
48 void b_file_write(void *data, const unsigned char *name, unsigned int size);
49 void b_file_delete(const unsigned char *name);
52 unsigned long b_smp_enqueue(void *ptr, unsigned long var);
53 unsigned long b_smp_dequeue(unsigned long *var);
54 void b_smp_run(unsigned long ptr, unsigned long var);
55 unsigned long b_smp_queuelen(void);
56 void b_smp_wait(void);
57 void b_smp_lock(unsigned long ptr);
58 void b_smp_unlock(unsigned long ptr);
59 unsigned long b_smp_get_id(void);
60 unsigned long b_smp_numcores(void);
63 unsigned long b_mem_allocate(unsigned long *mem, unsigned long nbr);
64 unsigned long b_mem_release(unsigned long *mem, unsigned long nbr);
65 unsigned long b_mem_get_free(void);
68 void b_speaker_tone(unsigned long nbr);
69 void b_speaker_off(void);
70 void b_speaker_beep(void);
73 void b_ethernet_tx(void *mem, void *dest, unsigned short type, unsigned short len);
74 void b_ethernet_tx_raw(void *mem, unsigned short len);
75 unsigned long b_ethernet_rx(void *mem);
76 unsigned long b_ethernet_avail();
79 // =============================================================================
80 // EOF