On Do, 2015-10-15 at 08:58 +0900, OGAWA Hirofumi wrote: > Gerd Hoffmann <kra...@redhat.com> writes: > > > On Mi, 2015-10-14 at 20:37 +0900, OGAWA Hirofumi wrote: > >> This converts vga code to curses code in console_write_bh(). > >> > >> With this changes, we can see line graphics (for example, dialog uses) > >> correctly. > > > > But it breaks line graphics in vga text mode on gtk I suspect? > > vga_to_curses[] is filled by curses_setup(). So if no -curses option, I > think it should have no change to behavior. (BTW, there is no common > section like kernel in qemu build, right? i.e. no need initializer to > global value.)
Ok, curses and gtk can't be active at the same time. But for curses and vnc it is possible (qemu -curses -vnc :$display), and you probably get a dissorted vga text mode over vnc then. I think the mapping should happen in the curses code, when curses updates the screen. curses_update() function is probably the best place for it. Also you don't need a init function, you can simply init the array with c99 initializers: chtype vga_to_curses[256] = { [0x04] = ACS_DIAMOND, [ ... ] };