Subversion Repositories HelenOS

Rev

Rev 3790 | Rev 3852 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3790 Rev 3844
Line 293... Line 293...
293
/**
293
/**
294
 * SGCN output operation. Prints a single character to the SGCN. If the line
294
 * SGCN output operation. Prints a single character to the SGCN. If the line
295
 * feed character is written ('\n'), the carriage return character ('\r') is
295
 * feed character is written ('\n'), the carriage return character ('\r') is
296
 * written straight away.
296
 * written straight away.
297
 */
297
 */
298
static void sgcn_putchar(struct chardev * cd, const char c)
298
static void sgcn_putchar(struct chardev * cd, const char c, bool silent)
299
{
299
{
-
 
300
    if (!silent) {
300
    spinlock_lock(&sgcn_output_lock);
301
        spinlock_lock(&sgcn_output_lock);
301
   
302
       
302
    sgcn_do_putchar(c);
303
        sgcn_do_putchar(c);
303
    if (c == '\n') {
304
        if (c == '\n')
304
        sgcn_do_putchar('\r');
305
            sgcn_do_putchar('\r');
-
 
306
       
-
 
307
        spinlock_unlock(&sgcn_output_lock);
305
    }
308
    }
306
   
-
 
307
    spinlock_unlock(&sgcn_output_lock);
-
 
308
}
309
}
309
 
310
 
310
/**
311
/**
311
 * Called when actively reading the character. Not implemented yet.
312
 * Called when actively reading the character. Not implemented yet.
312
 */
313
 */