Esempio n. 1
0
        //-------------------------------------------------
        //  postload - after loading a save state
        //-------------------------------------------------
        void postload()
        {
            // remove all timers and make a private list of permanent ones
            simple_list <emu_timer> private_list = new simple_list <emu_timer>();

            while (m_timer_list != null)
            {
                emu_timer timer = m_timer_list;

                // temporary timers go away entirely (except our special never-expiring one)
                if (timer.temporary() && !timer.expire().is_never())
                {
                    m_timer_allocator.reclaim(timer.release());
                }

                // permanent ones get added to our private list
                else
                {
                    private_list.append(timer_list_remove(timer));
                }
            }

            {
                // now re-insert them; this effectively re-sorts them by time
                emu_timer timer;
                while ((timer = private_list.detach_head()) != null)
                {
                    timer_list_insert(timer);
                }
            }

            m_suspend_changes_pending = true;
            rebuild_execute_list();

            // report the timer state after a log
            LOG("After resetting/reordering timers:\n");
#if VERBOSE
            dump_timers();
#endif
        }
Esempio n. 2
0
 // reclaim all items from a list
 public void reclaim_all(simple_list <ItemType> _list)
 {
     _list.detach_all();
 }
Esempio n. 3
0
 public override void customize_input_type_list(simple_list<input_type_entry> typelist)
 {
     base.customize_input_type_list(typelist);
 }