Ignore:
Timestamp:
2009-09-17T17:03:49Z (15 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
3037384
Parents:
41eca31
Message:

various protocol fixes
add console architecture

File:
1 edited

Legend:

Unmodified
Added
Removed
  • contrib/arch/uspace/srv/console/console.bp

    r41eca31 r810860a  
    1 !ns.IPC_CONNECT_ME_TO /* kbd */ ;
    2 !kbd.IPC_CONNECT_TO_ME ;
    3 !ns.IPC_CONNECT_ME_TO /* fb */ ;
    4 [/uspace/lib/libc/fnc.devmap_driver_register] ;
    5 !fb.FB_GET_RESOLUTION ;
     1?ipc_m_connect_me_to ;
     2[fnc.gcons_notify_connect] ;
    63(
    7         [fnc.vp_create] +
    8         [fnc.vp_switch]
     4        ?read {
     5                [fnc.cons_read]
     6        } +
     7       
     8        ?write {
     9                [fnc.cons_write]
     10        } +
     11       
     12        ?sync {
     13                [fnc.fb_pending_flush] ;
     14                tentative {
     15                        !fb.flush ;
     16                        [fnc.curs_goto]
     17                }
     18        } +
     19       
     20        ?clear {
     21                tentative {
     22                        !fb.flush
     23                }
     24        } +
     25       
     26        ?goto {
     27                tentative {
     28                        !fb.curs_goto
     29                }
     30        } +
     31       
     32        ?set_style {
     33                [fnc.fb_pending_flush] ;
     34                tentative {
     35                        [fnc.set_style]
     36                }
     37        } +
     38       
     39        ?set_color {
     40                [fnc.fb_pending_flush] ;
     41                tentative {
     42                        [fnc.set_color]
     43                }
     44        } +
     45       
     46        ?set_rgb_color {
     47                [fnc.fb_pending_flush] ;
     48                tentative {
     49                        [fnc.set_rgb_color]
     50                }
     51        } +
     52       
     53        ?cursor_visibility {
     54                [fnc.fb_pending_flush] ;
     55                tentative {
     56                        [fnc.curs_visibility]
     57                }
     58        } +
     59       
     60        ?get_event +
     61        ?get_size +
     62        ?get_color_cap +
     63        ?kcon_enable
    964)* ;
    10 [fnc.make_pixmap]* ;
    11 [fnc.make_anim] ;
    12 [fnc.vp_switch] ;
    13 !fb.FB_FLUSH ;
    14 !fb.FB_GET_CSIZE ;
    15 !fb.FB_GET_COLOR_CAP ;
    16 !fb.IPC_M_SHARE_OUT ;
    17 [/uspace/lib/libc/fnc.devmap_device_register]* ;
    18 [fnc.gcons_redraw_console] ;
    19 [fnc.set_rgb_color] ;
    20 [fnc.screen_clear] ;
    21 [fnc.curs_goto] ;
    22 [fnc.curs_visibility] ;
    23 (
    24         ?console.IPC_M_CONNECT_ME_TO ;
    25         [fnc.gcons_notify_connect] ;
    26         (
    27                 ?console.VFS_OUT_READ {
    28                         [fnc.cons_read]
    29                 } +
    30                
    31                 ?console.VFS_OUT_WRITE {
    32                         [fnc.cons_write]
    33                 } +
    34                
    35                 ?console.VFS_OUT_SYNC {
    36                         [fnc.fb_pending_flush] ;
    37                         (
    38                                 (
    39                                         !fb.FB_FLUSH ;
    40                                         [fnc.curs_goto]
    41                                 ) +
    42                                 NULL
    43                         ) ;
    44                 } +
    45                
    46                 ?console.CONSOLE_CLEAR {
    47                         !fb.FB_FLUSH +
    48                         NULL
    49                 } +
    50                
    51                 ?console.CONSOLE_GOTO {
    52                         !fb.CURS_GOTO +
    53                         NULL
    54                 } +
    55                
    56                 ?console.CONSOLE_GET_SIZE +
    57                
    58                 ?console.CONSOLE_GET_COLOR_CAP +
    59                
    60                 ?console.CONSOLE_SET_STYLE {
    61                         [fnc.fb_pending_flush] ;
    62                         (
    63                                 [fnc.set_style] +
    64                                 NULL
    65                         )
    66                 } +
    67                
    68                 ?console.CONSOLE_SET_COLOR {
    69                         [fnc.fb_pending_flush] ;
    70                         (
    71                                 [fnc.set_color] +
    72                                 NULL
    73                         )
    74                 } +
    75                
    76                 ?console.CONSOLE_SET_RGB_COLOR {
    77                         [fnc.fb_pending_flush] ;
    78                         (
    79                                 [fnc.set_rgb_color] +
    80                                 NULL
    81                         )
    82                 } +
    83                
    84                 ?console.CONSOLE_CURSOR_VISIBILITY {
    85                         [fnc.fb_pending_flush] ;
    86                         (
    87                                 [fnc.curs_visibility] +
    88                                 NULL
    89                         )
    90                 } +
    91                
    92                 ?console.CONSOLE_GET_EVENT +
    93                
    94                 ?console.CONSOLE_KCON_ENABLE
    95                
    96         )* ;
    97        
    98         ?console.IPC_M_PHONE_HUNGUP {
    99                 [fnc.gcons_notify_disconnect]
    100         }
    101 )*
     65?ipc_m_phone_hungup {
     66        [fnc.gcons_notify_disconnect]
     67}
Note: See TracChangeset for help on using the changeset viewer.