Previous 199869 Revisions Next

r20070 Saturday 5th January, 2013 at 04:57:00 UTC by R. Belmont
(MESS) sq1/sqrack: Greatly improved display behavior [R. Belmont]
[src/mess/machine]esqvfd.c

trunk/src/mess/machine/esqvfd.c
r20069r20070
331331
332332void esq2x40_sq1_t::write_char(int data)
333333{
334   if (data == 0x09)   // musical note
335   {
336      data = '^';   // approximate for now
337   }
338
334339    if (m_Wait87Shift)
335340    {
336//        printf("87Shift got %02x\n", data);
337        if (data == 0x00)   // clear
338        {
339            m_cursx = m_cursy = 0;
340            memset(m_chars, 0, sizeof(m_chars));
341            memset(m_attrs, 0, sizeof(m_attrs));
342            memset(m_dirty, 1, sizeof(m_dirty));
343        }
344
341      m_cursy = (data >> 4) & 0xf;
342      m_cursx = data & 0xf;
345343        m_Wait87Shift = false;
346344    }
345    else if (m_Wait88Shift)
346   {
347      m_Wait88Shift = false;
348   }
347349    else if ((data >= 0x20) && (data <= 0x7f))
348350    {
349351        m_chars[m_cursy][m_cursx] = data - ' ';
r20069r20070
369371    {
370372        m_Wait87Shift = true;
371373    }
374    else if (data == 0x88)
375    {
376        m_Wait88Shift = true;
377    }
372378    else
373379    {
374380//        printf("SQ-1 unhandled display char %02x\n", data);
r20069r20070
380386    m_rows = 2;
381387    m_cols = 40;
382388    m_Wait87Shift = false;
389   m_Wait88Shift = false;
383390}

Previous 199869 Revisions Next


© 1997-2024 The MAME Team