summaryrefslogtreecommitdiffstatshomepage
path: root/src/mess/machine/dp8390.c
diff options
context:
space:
mode:
author cracyc <cracyc@users.noreply.github.com>2013-03-11 01:30:20 +0000
committer cracyc <cracyc@users.noreply.github.com>2013-03-11 01:30:20 +0000
commit499bed06cd3c86d57ec3dc08c81da6309478026d (patch)
tree20e3a1c02025491fe2f837ff04ed95c6833d11a4 /src/mess/machine/dp8390.c
parent40f7ff28d7e88926e1655fce813ea3b12c7889f7 (diff)
(mess) dp8390: packet must be at least 60 bytes (nw)
Diffstat (limited to 'src/mess/machine/dp8390.c')
-rw-r--r--src/mess/machine/dp8390.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mess/machine/dp8390.c b/src/mess/machine/dp8390.c
index a20d42f7e38..048dca2fa9e 100644
--- a/src/mess/machine/dp8390.c
+++ b/src/mess/machine/dp8390.c
@@ -147,6 +147,15 @@ void dp8390_device::recv(UINT8 *buf, int len) {
if((offset >> 8) == m_regs.bnry) return recv_overflow();
}
}
+ if(len < 60) {
+ // this can't pass to the next page
+ for(; i < 60; i++) {
+ mem_write(high16 + offset, 0);
+ offset++;
+ }
+ len = 60;
+ }
+
m_regs.rsr |= 1;
m_regs.isr |= 1;
m_regs.curr = (offset >> 8) + ((offset & 0xff)?1:0);