Esempio n. 1
0
        //-------------------------------------------------
        //  interface_post_start - work to be done after
        //  actually starting a device
        //-------------------------------------------------
        public override void interface_post_start()
        {
            // set up save/restore of the palette
            m_save_pen.resize(m_palette.num_colors());
            m_save_contrast.resize(m_palette.num_colors());
            device().save_item(m_save_pen, "m_save_pen");
            device().save_item(m_save_contrast, "m_save_contrast");

            // save indirection tables if we have them
            if (m_indirect_colors.size() > 0)
            {
                device().save_item(m_indirect_colors, "m_indirect_colors");
                device().save_item(m_indirect_pens, "m_indirect_pens");
            }
        }
Esempio n. 2
0
        //-------------------------------------------------
        //  interface_post_start - work to be done after
        //  actually starting a device
        //-------------------------------------------------
        public override void interface_post_start()
        {
            // set up save/restore of the palette
            m_save_pen.resize((size_t)m_palette.num_colors());
            m_save_contrast.resize((size_t)m_palette.num_colors());
            device().save_item(NAME(new { m_save_pen }));
            device().save_item(NAME(new { m_save_contrast }));

            // save indirection tables if we have them
            if (m_indirect_colors.size() > 0)
            {
                device().save_item(NAME(new { m_indirect_colors }));
                device().save_item(NAME(new { m_indirect_pens }));
            }
        }
Esempio n. 3
0
        dirty_state [] m_dirty = new dirty_state[2]; // two dirty states


        // construction/destruction
        //-------------------------------------------------
        //  palette_client - constructor
        //-------------------------------------------------
        public palette_client(palette_t palette)
        {
            m_palette     = palette;
            m_next        = null;
            m_liveIdx     = 0; // m_live(&m_dirty[0]),
            m_previousIdx = 1; // m_previous(&m_dirty[1])


            // add a reference to the palette
            palette.ref_();


            // resize the dirty lists
            uint32_t total_colors = (uint32_t)(palette.num_colors() * palette.num_groups());

            m_dirty[0] = new dirty_state();
            m_dirty[1] = new dirty_state();
            m_dirty[0].resize(total_colors);
            m_dirty[1].resize(total_colors);

            // now add us to the list of clients
            m_next = palette.m_client_list;
            palette.m_client_list = this;
        }