Changes in kernel/genarch/src/drivers/ega/ega.c [b169619:39e1b9a] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/drivers/ega/ega.c
rb169619 r39e1b9a 69 69 uint8_t *backbuf; 70 70 ioport8_t *base; 71 mbstate_t mbstate; 71 72 } ega_instance_t; 72 73 73 static void ega_ putuchar(outdev_t *, char32_t);74 static void ega_write(outdev_t *, const char *, size_t); 74 75 static void ega_redraw(outdev_t *); 75 76 76 77 static outdev_operations_t egadev_ops = { 77 .write = ega_ putuchar,78 .write = ega_write, 78 79 .redraw = ega_redraw, 79 80 .scroll_up = NULL, … … 538 539 } 539 540 540 static void ega_putuchar(outdev_t *dev, char32_t ch) 541 { 542 ega_instance_t *instance = (ega_instance_t *) dev->data; 543 544 irq_spinlock_lock(&instance->lock, true); 545 541 static void _putuchar(ega_instance_t *instance, char32_t ch) 542 { 546 543 switch (ch) { 547 544 case '\n': … … 564 561 ega_check_cursor(instance); 565 562 ega_move_cursor(instance); 563 } 564 565 static void ega_write(outdev_t *dev, const char *s, size_t n) 566 { 567 ega_instance_t *instance = (ega_instance_t *) dev->data; 568 569 irq_spinlock_lock(&instance->lock, true); 570 571 size_t offset = 0; 572 char32_t ch; 573 574 while ((ch = str_decode_r(s, &offset, n, U_SPECIAL, &instance->mbstate))) 575 _putuchar(instance, ch); 566 576 567 577 irq_spinlock_unlock(&instance->lock, true);
Note:
See TracChangeset
for help on using the changeset viewer.