The bottom 5 bits contain the number of bytes remaining in the FIFO which is trivial to implement with Fifo8 (the remaining bits are unimplemented and left as 0 for now).
Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org> Reviewed-by: Laurent Vivier <laur...@vivier.eu> --- hw/scsi/esp.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/scsi/esp.c b/hw/scsi/esp.c index 34dc58da58..8a9b1500de 100644 --- a/hw/scsi/esp.c +++ b/hw/scsi/esp.c @@ -818,6 +818,10 @@ uint64_t esp_reg_read(ESPState *s, uint32_t saddr) val = s->rregs[saddr]; } break; + case ESP_RFLAGS: + /* Bottom 5 bits indicate number of bytes in FIFO */ + val = fifo8_num_used(&s->fifo); + break; default: val = s->rregs[saddr]; break; -- 2.20.1