summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2019-11-17 17:10:07 +1100
committer Vas Crabb <vas@vastheman.com>2019-11-17 17:10:07 +1100
commit90fe1e649a7bc9ea667de249736062d5dea21f7a (patch)
tree22071ec6c4a2a9ed08a5188314375165aed2fad7 /src/emu
parent4765e92ec366a315d4afec5fb8aa23fa596c8af0 (diff)
Remove internal autofire functionality as there's a plugin for that now (#5802)
Diffstat (limited to 'src/emu')
-rw-r--r--src/emu/inpttype.h1
-rw-r--r--src/emu/ioport.cpp31
-rw-r--r--src/emu/ioport.h14
3 files changed, 5 insertions, 41 deletions
diff --git a/src/emu/inpttype.h b/src/emu/inpttype.h
index 9cf56fd18ee..e25045c0b85 100644
--- a/src/emu/inpttype.h
+++ b/src/emu/inpttype.h
@@ -839,7 +839,6 @@ inline void construct_core_types_UI(simple_list<input_type_entry> &typelist)
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_RECORD_MNG, "Record MNG", input_seq(KEYCODE_F12, KEYCODE_LSHIFT, input_seq::not_code, KEYCODE_LCONTROL) )
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_RECORD_AVI, "Record AVI", input_seq(KEYCODE_F12, KEYCODE_LSHIFT, KEYCODE_LCONTROL) )
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_TOGGLE_CHEAT, "Toggle Cheat", input_seq(KEYCODE_F6) )
- INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_TOGGLE_AUTOFIRE, "Toggle Autofire", input_seq() )
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_UP, "UI Up", input_seq(KEYCODE_UP, input_seq::or_code, JOYCODE_Y_UP_SWITCH_INDEXED(0)) )
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_DOWN, "UI Down", input_seq(KEYCODE_DOWN, input_seq::or_code, JOYCODE_Y_DOWN_SWITCH_INDEXED(0)) )
INPUT_PORT_DIGITAL_TYPE( 0, UI, UI_LEFT, "UI Left", input_seq(KEYCODE_LEFT, input_seq::or_code, JOYCODE_X_LEFT_SWITCH_INDEXED(0)) )
diff --git a/src/emu/ioport.cpp b/src/emu/ioport.cpp
index 7e064e27698..69cc6f151a7 100644
--- a/src/emu/ioport.cpp
+++ b/src/emu/ioport.cpp
@@ -872,20 +872,18 @@ void ioport_field::get_user_settings(user_settings &settings)
if (!m_settinglist.empty() || m_type == IPT_ADJUSTER)
settings.value = m_live->value;
- // if there's analog data, extract the analog settings
if (m_live->analog != nullptr)
{
+ // if there's analog data, extract the analog settings
settings.sensitivity = m_live->analog->sensitivity();
settings.delta = m_live->analog->delta();
settings.centerdelta = m_live->analog->centerdelta();
settings.reverse = m_live->analog->reverse();
}
-
- // non-analog settings
else
{
+ // non-analog settings
settings.toggle = m_live->toggle;
- settings.autofire = m_live->autofire;
}
}
@@ -911,20 +909,18 @@ void ioport_field::set_user_settings(const user_settings &settings)
if (!m_settinglist.empty() || m_type == IPT_ADJUSTER)
m_live->value = settings.value;
- // if there's analog data, extract the analog settings
if (m_live->analog != nullptr)
{
+ // if there's analog data, extract the analog settings
m_live->analog->m_sensitivity = settings.sensitivity;
m_live->analog->m_delta = settings.delta;
m_live->analog->m_centerdelta = settings.centerdelta;
m_live->analog->m_reverse = settings.reverse;
}
-
- // non-analog settings
else
{
+ // non-analog settings
m_live->toggle = settings.toggle;
- m_live->autofire = settings.autofire;
}
}
@@ -1101,19 +1097,6 @@ void ioport_field::frame_update(ioport_value &result)
// if the state changed, look for switch down/switch up
bool curstate = m_digital_value || machine().input().seq_pressed(seq());
- if (m_live->autofire && !machine().ioport().get_autofire_toggle())
- {
- if (curstate)
- {
- if (m_live->autopressed > machine().ioport().get_autofire_delay())
- m_live->autopressed = 0;
- else if (m_live->autopressed > machine().ioport().get_autofire_delay() / 2)
- curstate = false;
- m_live->autopressed++;
- }
- else
- m_live->autopressed = 0;
- }
bool changed = false;
if (curstate != m_live->last)
{
@@ -1363,8 +1346,6 @@ ioport_field_live::ioport_field_live(ioport_field &field, analog_field *analog)
last(0),
toggle(field.toggle()),
joydir(digital_joystick::JOYDIR_COUNT),
- autofire(false),
- autopressed(0),
lockout(false)
{
// fill in the basic values
@@ -1680,9 +1661,7 @@ ioport_manager::ioport_manager(running_machine &machine)
m_playback_accumulated_frames(0),
m_timecode_file(machine.options().input_directory(), OPEN_FLAG_WRITE | OPEN_FLAG_CREATE | OPEN_FLAG_CREATE_PATHS),
m_timecode_count(0),
- m_timecode_last_time(attotime::zero),
- m_autofire_toggle(false),
- m_autofire_delay(3) // 1 seems too fast for a bunch of games
+ m_timecode_last_time(attotime::zero)
{
memset(m_type_to_entry, 0, sizeof(m_type_to_entry));
}
diff --git a/src/emu/ioport.h b/src/emu/ioport.h
index bb9a8f47830..ef9f1b4ae13 100644
--- a/src/emu/ioport.h
+++ b/src/emu/ioport.h
@@ -368,7 +368,6 @@ enum ioport_type
IPT_UI_EXPORT,
IPT_UI_AUDIT_FAST,
IPT_UI_AUDIT_ALL,
- IPT_UI_TOGGLE_AUTOFIRE,
// additional OSD-specified UI port types (up to 16)
IPT_OSD_1,
@@ -1095,7 +1094,6 @@ public:
struct user_settings
{
ioport_value value; // for DIP switches
- bool autofire; // for autofire settings
input_seq seq[SEQ_TYPE_TOTAL]; // sequences of all types
s32 sensitivity; // for analog controls
s32 delta; // for analog controls
@@ -1171,8 +1169,6 @@ struct ioport_field_live
bool last; // were we pressed last time?
bool toggle; // current toggle setting
digital_joystick::direction_t joydir; // digital joystick direction index
- bool autofire; // autofire
- int autopressed; // autofire status
bool lockout; // user lockout
std::string name; // overridden name
};
@@ -1406,12 +1402,6 @@ public:
ioport_type token_to_input_type(const char *string, int &player) const;
std::string input_type_to_token(ioport_type type, int player);
- // autofire
- bool get_autofire_toggle() { return m_autofire_toggle; }
- void set_autofire_toggle(bool toggle) { m_autofire_toggle = toggle; }
- int get_autofire_delay() { return m_autofire_delay; }
- void set_autofire_delay(int delay) { m_autofire_delay = delay; }
-
private:
// internal helpers
void init_port_types();
@@ -1477,10 +1467,6 @@ private:
emu_file m_timecode_file; // timecode/frames playback file (nullptr if not recording)
int m_timecode_count;
attotime m_timecode_last_time;
-
- // autofire
- bool m_autofire_toggle; // autofire toggle
- int m_autofire_delay; // autofire delay
};