All of lore.kernel.org
 help / color / mirror / Atom feed
From: Helge Deller <deller@gmx.de>
To: Richard Henderson <richard.henderson@linaro.org>,
	Sven Schnelle <svens@stackframe.org>,
	Richard Henderson <rth@twiddle.net>
Cc: qemu-devel@nongnu.org
Subject: Re: [PATCH v4 5/6] hppa: Add emulation of Artist graphics
Date: Fri, 20 Dec 2019 08:26:33 +0100	[thread overview]
Message-ID: <e8efe083-eed1-d7e8-8513-b26d2878bfdd@gmx.de> (raw)
In-Reply-To: <8a34a5a3-eb8f-c600-b17e-f9b448ea0925@linaro.org>

[-- Attachment #1: Type: text/plain, Size: 3517 bytes --]

On 19.12.19 01:28, Richard Henderson wrote:
> On 11/3/19 10:56 AM, Sven Schnelle wrote:
>> This adds emulation of Artist graphics good enough
>> to get a Text console on both Linux and HP-UX. The
>> X11 server from HP-UX also works.
>>
>> Signed-off-by: Sven Schnelle <svens@stackframe.org>
>> ---
>>  hw/display/Kconfig       |    4 +
>>  hw/display/Makefile.objs |    1 +
>>  hw/display/artist.c      | 1449 ++++++++++++++++++++++++++++++++++++++
>>  hw/display/trace-events  |    9 +
>>  hw/hppa/Kconfig          |    1 +
>>  hw/hppa/hppa_hardware.h  |    1 +
>>  hw/hppa/machine.c        |    9 +
>>  7 files changed, 1474 insertions(+)
>>  create mode 100644 hw/display/artist.c
>
> Seems to have some problems rebased upon master:
>
>
>> Thread 6 "qemu-system-hpp" received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 0x7fffee3b6700 (LWP 11752)]
>> 0x00005555558bba54 in artist_rop8 (s=s@entry=0x555556105400,
>>     dst=dst@entry=0x7fffed740000 "", val=0 '\000')
>>     at /home/rth/qemu/qemu/hw/display/artist.c:288
>> 288	        *dst |= val & plane_mask;
>> (gdb) where
>> #0  0x00005555558bba54 in artist_rop8
>>     (s=s@entry=0x555556105400, dst=dst@entry=0x7fffed740000 "", val=0 '\000')
>>     at /home/rth/qemu/qemu/hw/display/artist.c:288
>> #1  0x00005555558bc145 in vram_bit_write
>>     (s=s@entry=0x555556105400, posx=<optimized out>, posy=<optimized out>, incr_x=incr_x@entry=false, size=size@entry=4, data=<optimized out>, data@entry=0)
>>     at /home/rth/qemu/qemu/hw/display/artist.c:430
>> #2  0x00005555558bd33b in artist_reg_write
>>     (opaque=0x555556105400, addr=1050144, val=0, size=4)
>>     at /home/rth/qemu/qemu/hw/display/artist.c:862
>> #3  0x00005555557b271b in memory_region_write_accessor
>>     (mr=mr@entry=0x5555561058f0, addr=addr@entry=1050144, value=value@entry=0x7fffee3b4f08, size=size@entry=4, shift=shift@entry=0, mask=mask@entry=4294967295, attrs=...) at /home/rth/qemu/qemu/memory.c:483
>> #4  0x00005555557b03d3 in access_with_adjusted_size
>>     (addr=addr@entry=1050144, value=value@entry=0x7fffee3b4f08, size=size@entry=4, access_size_min=<optimized out>, access_size_max=<optimized out>, access_fn=access_fn@entry=
>>     0x5555557b25f0 <memory_region_write_accessor>, mr=0x5555561058f0, attrs=...) at /home/rth/qemu/qemu/memory.c:539
>> #5  0x00005555557b4b34 in memory_region_dispatch_write
>>     (mr=mr@entry=0x5555561058f0, addr=addr@entry=1050144, data=<optimized out>, data@entry=0, op=op@entry=MO_BEUL, attrs=...)
>>     at /home/rth/qemu/qemu/memory.c:1475
>> #6  0x00005555557c18ed in io_writex
>>     (env=env@entry=0x5555563a6b60, mmu_idx=mmu_idx@entry=4, val=val@entry=0, addr=addr@entry=4161799712, retaddr=140736415114886, op=MO_BEUL, iotlbentry=<optimized out>, iotlbentry=<optimized out>)
>>     at /home/rth/qemu/qemu/accel/tcg/cputlb.c:977
>> #7  0x00005555557c77bc in store_helper
>>     (op=MO_BEUL, retaddr=140736415114886, oi=<optimized out>, val=0, addr=4161799712, env=0x5555563a6b60) at /home/rth/qemu/qemu/accel/tcg/cputlb.c:1716
>> #8  0x00005555557c77bc in helper_be_stl_mmu
>>     (env=0x5555563a6b60, addr=4161799712, val=0, oi=<optimized out>, retaddr=140736415114886) at /home/rth/qemu/qemu/accel/tcg/cputlb.c:1842
>> #9  0x00007fffc007a686 in code_gen_buffer ()


Richard, the attached patch (for seabios-hppa) fixes it for me.
Can you test as well?
It fixes the sti text column to go out-of-range and thus outside the framebuffer memory.

Helge

[-- Attachment #2: sti.patch --]
[-- Type: text/x-patch, Size: 358 bytes --]

diff --git a/src/parisc/sti.c b/src/parisc/sti.c
index 7935770..eca79da 100644
--- a/src/parisc/sti.c
+++ b/src/parisc/sti.c
@@ -168,5 +168,8 @@ void sti_putc(const char c)
         }
         return;
     }
-    sti_putchar(rom, row, col++, c);
+
+    sti_putchar(rom, row, col, c);
+    if (col < ((sti_glob_cfg.onscreen_x / font->width) - 1))
+	col++;
 }

  reply	other threads:[~2019-12-20  7:31 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-03 20:56 [PATCH v4 0/6] HPPA: i82596, PS/2 and graphics emulation Sven Schnelle
2019-11-03 20:56 ` [PATCH v4 1/6] hw/hppa/dino.c: Improve emulation of Dino PCI chip Sven Schnelle
2019-11-03 20:56 ` [PATCH v4 2/6] hppa: Add support for LASI chip with i82596 NIC Sven Schnelle
2019-11-03 20:56 ` [PATCH v4 3/6] ps2: accept 'Set Key Make and Break' commands Sven Schnelle
2019-11-03 20:56 ` [PATCH v4 4/6] hppa: add emulation of LASI PS2 controllers Sven Schnelle
2019-11-03 20:56 ` [PATCH v4 5/6] hppa: Add emulation of Artist graphics Sven Schnelle
2019-12-19  0:28   ` Richard Henderson
2019-12-20  7:26     ` Helge Deller [this message]
2019-12-20 16:36       ` Helge Deller
2019-12-20 17:03         ` Sven Schnelle
2019-11-23 13:59 ` [PATCH v4 0/6] HPPA: i82596, PS/2 and graphics emulation Sven Schnelle
2019-11-25 10:01   ` Richard Henderson
2019-12-13 20:40     ` Helge Deller
2019-12-19  0:44       ` Richard Henderson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e8efe083-eed1-d7e8-8513-b26d2878bfdd@gmx.de \
    --to=deller@gmx.de \
    --cc=qemu-devel@nongnu.org \
    --cc=richard.henderson@linaro.org \
    --cc=rth@twiddle.net \
    --cc=svens@stackframe.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.